公告
作者新书《Python之光: Python编程入门与实战》已上市,购买方式见书籍主页链接,欢迎联系作者获取资源和加入本书学习群。跟作者学习,请进入 Python学习课程。欢迎关注作者的相关书籍 《深入浅出Pandas》
本页整理书籍《Python之光:Python编程入门与实战》的一些错误及修正内容,同时也会刊载一些阅读指导内容。欢迎指出错误(可进入系列首页找到作者联系方式联系作者),提供页码和错误的大致位置。
章节 2.2.7 中第一个代码区域的第一行代码:
s = {} # 空集合
应该删去,因为它定义的是一个空字典。
代码片断后的文字介绍中我们用列表推荐式暂时过滤掉特殊方法
中的列表推荐式
应该为列表推导式
。
章节 2.3.6 数字的属性和方法中的代码片断中,以下第二部分代码应该删去,属性重复且错误的内容:
# 二进制表示中 1 的个数
(3).bit_length()
# 2
第二部分代码片断中,倒数第二个代码的执行结果错误,应为:
1 > 2 & 1 < 2
# True
排版问题,在当页最后的几行代码区域,print('aa\bcc')
中,将 \bcc
都加粗了,应该只加粗 \b
。
代码片断中的 help()
应该为 help(sorted)
。
此为阅读指导
在章节 8.1.4 按列拆分 Excel 文件 的案例中,如果你使用了最新的 pandas 版本(2.1及以上),以下代码:
# 设置手动分组并拆分、导出
(
df.set_index('name')
.groupby(['team'] + ['Q']*4, axis=1)
.apply(lambda x: x.to_excel(f'拆分/{x.name}.xlsx'))
)
可能会抛出警告(不影响代码执行效果)如:
FutureWarning: DataFrame.groupby with axis=1 is deprecated.
Do `frame.T.groupby(...)` without axis instead.
是由于从 pandas 2.1( 2023年08月30日更新)开始,不建议参数 axis=1 在 DataFrame.groupby()
中使用,推荐 frame.T.groupby(...)
方法,即先将 DataFrame 转置,再分组,因此我们的代码可以修改成:
# 设置手动分组并拆分、导出
(
df.set_index('name')
.T
.groupby(['team'] + ['Q']*4)
.apply(lambda x: x.to_excel(f'拆分/{x.name}.xlsx'))
)
也可以实现相同的效果。
更新时间:2024-09-03 19:51:03 标签:python 勘误