前言 xiii
第一部分 Python入门
第 1 章 为什么要用Python为Excel编程 3
1.1 Excel作为一门编程语言 4
1.1.1 新闻中的Excel 5
1.1.2 编程最佳实践 5
1.1.3 现代Excel 10
1.2 用在Excel上的Python 11
1.2.1 可读性和可维护性 11
1.2.2 标准库和包管理器 12
1.2.3 科学计算 13
1.2.4 现代语言特性 14
1.2.5 跨平台兼容性 15
1.3 小结 15
第 2 章 开发环境 17
2.1 Anaconda Python发行版 18
2.1.1 安装 18
2.1.2 Anaconda Prompt 19
2.1.3 Python REPL:交互式Python会话 21
2.1.4 包管理器:Conda和pip 22
2.1.5 Conda环境 24
2.2 Jupyter笔记本 24
2.2.1 运行Jupyter笔记本 25
2.2.2 笔记本单元格 26
2.2.3 编辑模式与命令模式 28
2.2.4 执行顺序很重要 28
2.2.5 关闭Jupyter笔记本 28
2.3 VS Code 30
2.3.1 安装和配置 31
2.3.2 执行Python脚本 33
2.4 小结 36
第 3 章 Python入门 37
3.1 数据类型 37
3.1.1 对象 38
3.1.2 数值类型 39
3.1.3 布尔值 41
3.1.4 字符串 42
3.2 索引和切片 43
3.2.1 索引 43
3.2.2 切片 44
3.3 数据结构 45
3.3.1 列表 45
3.3.2 字典 47
3.3.3 元组 49
3.3.4 集合 49
3.4 控制流 50
3.4.1 代码块和pass语句 50
3.4.2 if 语句和条件表达式 51
3.4.3 for 循环和while循环 52
3.4.4 列表、字典和集合推导式 55
3.5 组织代码 56
3.5.1 函数 56
3.5.2 模块和import语句 57
3.5.3 datetime类 59
3.6 PEP 8:Python风格指南 61
3.6.1 PEP 8和VS Code 62
3.6.2 类型提示 63
3.7 小结 64
第二部分 pandas入门
第4 章 NumPy基础 67
4.1 NumPy入门 67
4.1.1 NumPy数组 67
4.1.2 向量化和广播 69
4.1.3 通用函数 70
4.2 创建和操作数组 71
4.2.1 存取元素 71
4.2.2 方便的数组构造器 72
4.2.3 视图和副本 73
4.3 小结 73
第 5 章 使用pandas进行数据分析 74
5.1 DataFrame和Series 74
5.1.1 索引 76
5.1.2 列 79
5.2 数据操作 80
5.2.1 选取数据 80
5.2.2 设置数据 85
5.2.3 缺失数据 87
5.2.4 重复数据 89
5.2.5 算术运算 90
5.2.6 处理文本列 91
5.2.7 应用函数 92
5.2.8 视图和副本 93
5.3 组合DataFrame 94
5.3.1 连接 94
5.3.2 连接和合并 95
5.4 描述性统计量和数据聚合 97
5.4.1 描述性统计量 97
5.4.2 分组 98
5.4.3 透视和熔化 99
5.5 绘图 100
5.5.1 Matplotlib 100
5.5.2 Plotly 102
5.6 导入和导出DataFrame 104
5.6.1 导出CSV文件 105
5.6.2 导入CSV文件 106
5.7 小结 107
第6 章 使用pandas进行时序分析 109
6.1 DatetimeIndex 110
6.1.1 创建DatetimeIndex 110
6.1.2 筛选DatetimeIndex 112
6.1.3 处理时区 113
6.2 常见时序操作 114
6.2.1 移动和百分比变化率 114
6.2.2 基数的更改和相关性 116
6.2.3 重新采样 118
6.2.4 滚动窗口 119
6.3 pandas的局限性 120
6.4 小结 121
第三部分 在Excel之外读写Excel文件
第 7 章 使用pandas操作Excel文件 125
7.1 案例研究:Excel报表 125
7.2 使用pandas读写Excel文件 128
7.2.1 read_excel函数和ExcelFile类 128
7.2.2 to_excel方法和ExcelWriter类 133
7.3 使用pandas处理Excel文件的局限性 134
7.4 小结 135
第 8 章 使用读写包操作Excel文件 136
8.1 读写包 136
8.1.1 何时使用何种包 137
8.1.2 excel.py模块 138
8.1.3 OpenPyXL 139
8.1.4 XlsxWriter 143
8.1.5 pyxlsb 145
8.1.6 xlrd、xlwt和xlutils 146
8.2 读写包的高级主题 149
8.2.1 处理大型Excel文件 149
8.2.2 调整DataFrame在Excel中的格式 152
8.2.3 案例研究(复习):Excel报表 157
8.3 小结 158
第四部分 使用xlwings对Excel应用程序进行编程
第 9 章 Excel自动化 161
9.1 开始使用xlwings 162
9.1.1 将Excel用作数据查看器 162
9.1.2 Excel对象模型 163
9.1.3 运行VBA代码 170
9.2 转换器、选项和集合 170
9.2.1 处理DataFrame 171
9.2.2 转换器和选项 172
9.2.3 图表、图片和已定义名称 174
9.2.4 案例研究(再次回顾):Excel报表 177
9.3 高级xlwings主题 179
9.3.1 xlwings的基础 179
9.3.2 提升性能 180
9.3.3 如何弥补缺失的功能 181
9.4 小结 182
第 10 章 Python驱动的Excel工具 183
10.1 利用xlwings将Excel用作前端 183
10.1.1 Excel插件 184
10.1.2 quickstart命令 185
10.1.3 Run main 186
10.1.4 RunPython函数187
10.2 部署 191
10.2.1 Python依赖 191
10.2.2 独立工作簿:脱离xlwings插件 191
10.2.3 配置的层次关系 192
10.2.4 设置 193
10.3 小结 194
第 11 章 Python包追踪器 195
11.1 构建什么样的应用程序 195
11.2 核心功能 197
11.2.1 Web API 198
11.2.2 数据库 201
11.2.3 异常 208
11.3 应用程序架构 210
11.3.1 前端 211
11.3.2 后端 215
11.3.3 调试 217
11.4 小结 219
第 12 章 用户定义函数 220
12.1 UDF入门 220
12.2 案例研究:Google Trends 225
12.2.1 Google Trends简介 225
12.2.2 使用DataFrame和动态数组 226
12.2.3 从Google Trends上获取数据 231
12.2.4 使用UDF绘制图表 234
12.2.5 调试UDF 236
12.3 高级UDF主题 238
12.3.1 基础性能优化 238
12.3.2 缓存 240
12.3.3 sub装饰器 242
12.4 小结 243
附录A Conda环境 245
附录B 高级VS Code功能 248
附录C 高级Python概念 253
· · · · · · (
收起)
0 有用 喵汪汪 2023-08-10 09:21:15 上海
屌啦!
0 有用 图灵社区 2022-04-13 13:50:57
流行 Python 库 xlwings 创始人亲授,教你让 Excel 快得飞起来!
0 有用 paroca 2023-09-10 14:51:22 北京
实操类书籍,可建立基本概念。
2 有用 吉瑟斯の小宇宙 2022-10-01 10:22:53 上海
流行Python库xlwings创始人亲授的实用好书!下午写书评!
2 有用 丘山志 2022-12-17 12:55:34 北京
工具书,工作需要,提高数据分析效率,多学一门技能。
0 有用 雨宫YuG 2024-09-01 19:52:04 广东
不建议购买,理由如下 1.前期费了很大篇幅讲python,pandas这些内容,后面重头戏内容反而很多地方匆匆带过。 2.概念辨析对新手不友好,两个不同的概念,用极其容易混淆的中文去进行表达,看的时候费老大劲去辨别。 3.内容偏水。比如这本书的5.4.3,标题叫透视和熔化,结果全文连熔化两个字都没提到,那请问我怎么知道你标题的熔化是什么意思?诸如此类,内容整体很水。
0 有用 漩涡。 2024-08-14 16:56:41 浙江
对b站课程的吸收速度之快,让我忘却了我本身的知识浅薄。 知识吸收越快,其实越说明这些并不属于自己。 很想欺骗自己说,是这本书太难,没有遇到一个好的总结归纳的老师。 但是总结归纳终究还是得自己来干,因为知识的获取从来都没有想象中的那么简单。 令人讽刺的是,被外界多多少少影响的我也曾认为读专业书才是功利的表现,真正沉下心来读才发现,一颗学术的心,一颗对知识有着纯粹追求的心,是绝不参杂世俗意义上的功利... 对b站课程的吸收速度之快,让我忘却了我本身的知识浅薄。 知识吸收越快,其实越说明这些并不属于自己。 很想欺骗自己说,是这本书太难,没有遇到一个好的总结归纳的老师。 但是总结归纳终究还是得自己来干,因为知识的获取从来都没有想象中的那么简单。 令人讽刺的是,被外界多多少少影响的我也曾认为读专业书才是功利的表现,真正沉下心来读才发现,一颗学术的心,一颗对知识有着纯粹追求的心,是绝不参杂世俗意义上的功利之心的。 我不奢望一本书就能让我立马掌握如海的知识,但是每一本书,特别是这本书,让我浮躁的心慢慢平静下来。 从专业的角度来评价,一些基本知识还是过了一遍的,但是比较高级的内容,还是让我望而生畏,感觉艰涩难懂。内容其实不适合小白,因为内容从基础之后,就开始跳跃了。 (展开)
0 有用 mymike 2024-08-01 08:26:43 上海
xlwings的作者写的书。Pandas主要用于数据清洗和分析,把Pandas和xlwings结合起来用,可以解决前者对Excel操控的痛点,对于依赖Excel的企业用户友好。
1 有用 阅微草堂 2023-12-28 14:00:01 江苏
第一次发现,微信读书的一个用处就是读那些你想读不想买,需要用但是不需要自己精读的书。编程最佳实践(关注点分离、DRY 原则、充分利用自动测试和版本控制)。列表、字典和集合推导式在技术上是一种创建对应数据结构的方法,不过很多时候人们用它们来代替for循环——这也是为什么我要在这里介绍推导式。很多时候自己写的代码逻辑没有问题,但是由于代码的版本不匹配原因导致的,还有一个包的本地链接问题
1 有用 vito 2023-11-28 10:31:45 上海
本书有两个问题,一是前半本书都在讲 Python 和 pandas 的基础,二是这些基础内容不全面、不深入。造成的结果就是,会的人收获不大,权当复习,不会的人只能够学个皮毛,距离掌握还有相当的距离。 但还有几点小技巧值得记录: 1. %matplotlib notebook 2. pd.options.plotting.backend = "plotly" 3. 新版本 Excel 的动态数组功能... 本书有两个问题,一是前半本书都在讲 Python 和 pandas 的基础,二是这些基础内容不全面、不深入。造成的结果就是,会的人收获不大,权当复习,不会的人只能够学个皮毛,距离掌握还有相当的距离。 但还有几点小技巧值得记录: 1. %matplotlib notebook 2. pd.options.plotting.backend = "plotly" 3. 新版本 Excel 的动态数组功能值得研究一下 4. 装饰器的用法要学习一下 (展开)