书籍详情
代替VBA!用Python轻松实现Excel编程
作者:童大谦
出版社:电子工业出版社
出版时间:2021-12-01
ISBN:9787121423192
定价:¥89.90
购买这本书可以去
内容简介
在数据分析方面,Python实际上已经远远超越VBA,因为使用Pyhton提供的数据处理函数和模块就可以实现很多功能,既快速、可靠又简便。本书结合OpenPyXl、win32com、xlwings和pandas等Python包全面介绍使用Python实现Excel脚本开发的各种可能性,涉及的内容包括:Python语言基础、Python文件操作、Excel对象模型、Excel图形绘制、Excel图表绘制、字典在Excel中的应用、正则表达式在Excel中的应用、使用Pandas包提高数据处理效率、使用Matplotlib包绘图、Python与Excel VBA混合编程等。本书适合任何对Excel Python脚本开发感兴趣的朋友阅读,可以是有编程需求的职场办公人员、数据分析人员、大学生、科研人员和程序员等。
作者简介
童大谦,具有15年以上VB、VBA、.NET开发经验,开发了多个数学、数据分析与可视化方面的软件,以及与科研院所合作开发了若干个软件系统。对Python、MATLAB、SPSS、R等数据分析软件非常熟悉,出版多本相关图书。曾在高校执教,CSDN高级讲师,全网学员目前近20万人。
目录
语言基础篇
第1章 Python语言基础 2
1.1 Python语言及其编程环境 2
1.1.1 Python语言及其特点 2
1.1.2 下载和安装Python 3
1.1.3 Python语言的编程环境 4
1.2 常量和变量 7
1.2.1 常量 8
1.2.2 变量及其名称 9
1.2.3 变量的声明、赋值和删除 9
1.2.4 深入变量 11
1.2.5 变量的数据类型 12
1.3 数字 12
1.3.1 整型数字 12
1.3.2 浮点型数字 13
1.3.3 复数 13
1.3.4 类型转换 14
1.3.5 Python的整数缓存机制 15
1.4 字符串 16
1.4.1 创建字符串 16
1.4.2 索引和切片 17
1.4.3 转义字符 17
1.4.4 字符串的格式化输出 18
1.4.5 字符串的长度和大小写 20
1.4.6 字符串的分割、连接和删除 21
1.4.7 字符串的查找和替换 22
1.4.8 字符串的比较 23
1.4.9 字符串缓存机制 24
1.5 列表 25
1.5.1 创建列表 25
1.5.2 添加列表元素 28
1.5.3 索引和切片 29
1.5.4 删除列表元素 31
1.5.5 列表的排序 32
1.5.6 操作函数 32
1.5.7 二维列表 33
1.6 元组 34
1.6.1 元组的创建和删除 34
1.6.2 索引和切片 35
1.6.3 基本运算和操作 36
1.7 字典 37
1.7.1 字典的创建 37
1.7.2 索引 38
1.7.3 字典元素的增删改 39
1.7.4 字典数据的格式化输出 40
1.8 集合 41
1.8.1 集合的创建 41
1.8.2 集合元素的添加和删除 42
1.8.3 集合的运算 42
1.9 处理日期和时间 45
1.9.1 获取日期和时间 45
1.9.2 格式化日期和时间 46
1.10 表达式 47
1.10.1 算术运算符 47
1.10.2 关系运算符 48
1.10.3 逻辑运算符 49
1.10.4 赋值/成员/身份运算符 50
1.10.5 运算符的优先级 50
1.11 流程控制 52
1.11.1 判断结构 52
1.11.2 循环结构——for循环 57
1.11.3 循环结构——while循环 61
1.11.4 其他结构 63
1.12 函数 65
1.12.1 内部函数 65
1.12.2 标准模块函数 67
1.12.3 自定义函数 69
1.12.4 变量的作用范围 75
1.12.5 匿名函数 77
1.13 模块 77
1.13.1 内置模块和第三方模块 77
1.13.2 自定义模块 78
1.14 工程 79
1.14.1 导入内置模块和第三方模块 79
1.14.2 导入自定义模块 80
1.15 异常处理 81
1.15.1 常见的异常 81
1.15.2 异常捕获——单分支的情况 82
1.15.3 异常捕获——多分支的情况 83
1.15.4 异常捕获——try…except…else… 84
1.15.5 异常捕获——try...finally... 84
第2章 Python文件操作 86
2.1 使用Python的open函数操作文件 86
2.1.1 open函数 86
2.1.2 创建文本文件并写入数据 87
2.1.3 读取文本文件数据 89
2.1.4 向文本文件中追加数据 90
2.1.5 读/写二进制文件数据 91
2.1.6 使用struct模块读取二进制文件 92
2.2 使用OS模块操作文件 93
2.2.1 文件操作 93
2.2.2 目录操作 95
2.2.3 路径操作 96
2.2.4 系统操作 97
对象模型篇
第3章 Excel对象模型:
OpenPyXl包 100
3.1 OpenPyXl包概述 100
3.1.1 Excel相关Python包的比较 100
3.1.2 OpenPyXI包及其安装 101
3.1.3 Excel对象模型 101
3.1.4 使用OpenPyXI包的一般过程 102
3.2 工作簿对象 102
3.2.1 创建、保存和关闭工作簿 102
3.2.2 打开已有的工作簿文件 103
3.3 工作表对象 104
3.3.1 创建和删除工作表 104
3.3.2 管理工作表 105
3.3.3 引用工作表 106
3.3.4 复制、移动工作表 106
3.3.5 行/列操作 107
3.3.6 工作表对象的其他属性和方法 113
3.4 单元格对象 114
3.4.1 单元格的引用和赋值 114
3.4.2 引用单元格区域 115
3.4.3 操作单元格区域 116
3.4.4 设置单元格样式 117
3.4.5 插入图片 128
3.4.6 插入公式 129
3.5 综合应用 129
3.5.1 批量新建和删除工作表 129
3.5.2 按列拆分工作表 131
3.5.3 将多个工作表分别保存为工作簿 133
3.5.4 将多个工作表合并为一个工作表 134
第4章 Excel对象模型:win32com和xlwings包 137
4.1 win32com和xlwings包概述 137
4.1.1 win32com包及其安装 137
4.1.2 xlwings包及其安装 139
4.2 Excel对象 139
4.2.1 Excel对象及其层次结构 139
4.2.2 使用win32com创建Excel对象 140
4.2.3 使用xlwings创建Excel对象 140
4.2.4 xlwings的两种编程方式 141
4.3 单元格对象 141
4.3.1 引用单元格 142
4.3.2 引用整行和整列 145
4.3.3 引用区域 147
4.3.4 引用所有单元格/特殊区域/区域的
集合 151
4.3.5 扩展引用当前工作表中的单元格
区域 154
4.3.6 引用末行或末列 156
4.3.7 引用特殊的单元格 158
4.3.8 获取区域的行数、列数、左上角
和右下角单元格的坐标、形状、
大小 159
4.3.9 插入单元格或区域 161
4.3.10 选择和清除单元格 162
4.3.11 复制、粘贴、剪切和删除单
元格 164
4.3.12 设置单元格的名称、批注和
字体 168
4.3.13 设置单元格的对齐方式、背景色
和边框 172
4.4 工作表对象 175
4.4.1 相关对象介绍 175
4.4.2 创建和引用工作表 175
4.4.3 激活、复制、移动和删除工作表 179
4.4.4 隐藏和显示工作表 182
4.4.5 选择行和列 183
4.4.6 复制、剪切行和列 185
4.4.7 插入行和列 187
4.4.8 删除行和列 189
4.4.9 设置行高和列宽 191
4.5 工作簿对象 193
4.5.1 创建和打开工作簿 193
4.5.2 引用、激活、保存和关闭工作簿 195
4.6 Excel应用对象 197
4.6.1 Application(App)对象和Apps
对象 197
4.6.2 定义位置、大小、标题、可见性
和状态属性 199
4.6.3 定义其他常用属性 201
4.7 数据读/写 202
4.7.1 Excel工作表与Python列表之间
的数据读/写 203
4.7.2 Excel工作表与Python字典之间
的数据读/写 207
4.7.3 Excel工作表与Python DataFrame
之间的数据读/写 208
4.8 综合应用 208
4.8.1 批量新建和删除工作表 208
4.8.2 按列拆分工作表 211
4.8.3 将多个工作表分别保存为工作簿 215
4.8.4 将多个工作表合并为一个工作表 217
图形图表篇
第5章 使用Python绘制Excel图形 224
5.1 创建图形 224
5.1.1 点 224
5.1.2 直线段 226
5.1.3 矩形、圆角矩形、椭圆形和圆形 226
5.1.4 多义线和多边形 228
5.1.5 曲线 229
5.1.6 标签 230
5.1.7 文本框 231
5.1.8 标注 231
5.1.9 自选图形 233
5.1.10 图表 234
5.1.11 艺术字 235
5.2 图形属性设置 237
5.2.1 颜色设置 237
5.2.2 线条属性:LineFormat对象 239
5.2.3 线条属性:颜色、线型和线宽 240
5.2.4 线条属性:箭头、透明度和图案
填充 241
5.2.5 线条属性:多义线、曲线和多边
形的顶点 243
5.2.6 面的属性:FillFormat对象、颜色
和透明度 245
5.2.7 面的属性:单色填充和渐变色
填充 246
5.2.8 面的属性:图案填充、图片填充
和纹理填充 250
5.2.9 文本属性 253
5.3 图形变换 254
5.3.1 图形平移 254
5.3.2 图形旋转 255
5.3.3 图形缩放 255
5.3.4 图形翻转 256
5.4 其他图形操作 257
5.4.1 遍历工作表中的图形 257
5.4.2 固定图形在工作表中的位置 260
5.4.3 动画 260
5.5 图片操作 261
5.5.1 创建图片 261
5.5.2 图片的几何变换 262
第6章 使用Python绘制Excel图表 263
6.1 创建图表 263
6.1.1 使用xlwings包创建图表 263
6.1.2 使用API方式创建图表 265
6.1.3 使用Shapes对象创建图表 266
6.1.4 绑定数据 269
6.2 图表及其序列设置 270
6.2.1 设置图表类型 270
6.2.2 Chart对象的常用属性和方法 271
6.2.3 设置序列 272
6.2.4 设置序列中单个点的属性 274
6.3 基本图形元素的属性设置 276
6.3.1 设置颜色 276
6.3.2 设置线形图形元素的属性 277
6.3.3 设置区域的透明度和颜色填充 277
6.3.4 设置区域的图案/图片/纹理填充 279
6.4 坐标系设置 280
6.4.1 设置Axes对象和Axis对象 280
6.4.2 设置坐标轴标题 281
6.4.3 设置数值轴取值范围 282
6.4.4 设置刻度线 283
6.4.5 设置刻度标签 283
6.4.6 设置网格线 285
6.4.7 设置多轴图 286
6.4.8 设置对数坐标图 287
6.4.9 设置其他属性 288
6.5 图表元素设置 290
6.5.1 SetElement方法 290
6.5.2 设置图表区域/绘图区 292
6.5.3 设置图例 293
6.6 输出图表 294
6.6.1 将图表复制到剪贴板 295
6.6.2 将图表保存为图片 296
数据处理篇
第7章 使用Python字典处理Excel
数据 298
7.1 数据提取 298
7.1.1 提取首次数据 298
7.1.2 提取末次数据 300
7.2 数据去重 302
7.2.1 使用列表去重 302
7.2.2 使用集合去重 304
7.2.3 使用字典去重 305
7.2.4 使用字典对象的fromkeys方法
去重 306
7.2.5 多表去重 308
7.2.6 跨表去重 309
7.3 数据查询 312
7.3.1 个案查询 312
7.3.2 多条件查询 313
7.4 数据汇总 314
7.4.1 出现次数汇总 315
第1章 Python语言基础 2
1.1 Python语言及其编程环境 2
1.1.1 Python语言及其特点 2
1.1.2 下载和安装Python 3
1.1.3 Python语言的编程环境 4
1.2 常量和变量 7
1.2.1 常量 8
1.2.2 变量及其名称 9
1.2.3 变量的声明、赋值和删除 9
1.2.4 深入变量 11
1.2.5 变量的数据类型 12
1.3 数字 12
1.3.1 整型数字 12
1.3.2 浮点型数字 13
1.3.3 复数 13
1.3.4 类型转换 14
1.3.5 Python的整数缓存机制 15
1.4 字符串 16
1.4.1 创建字符串 16
1.4.2 索引和切片 17
1.4.3 转义字符 17
1.4.4 字符串的格式化输出 18
1.4.5 字符串的长度和大小写 20
1.4.6 字符串的分割、连接和删除 21
1.4.7 字符串的查找和替换 22
1.4.8 字符串的比较 23
1.4.9 字符串缓存机制 24
1.5 列表 25
1.5.1 创建列表 25
1.5.2 添加列表元素 28
1.5.3 索引和切片 29
1.5.4 删除列表元素 31
1.5.5 列表的排序 32
1.5.6 操作函数 32
1.5.7 二维列表 33
1.6 元组 34
1.6.1 元组的创建和删除 34
1.6.2 索引和切片 35
1.6.3 基本运算和操作 36
1.7 字典 37
1.7.1 字典的创建 37
1.7.2 索引 38
1.7.3 字典元素的增删改 39
1.7.4 字典数据的格式化输出 40
1.8 集合 41
1.8.1 集合的创建 41
1.8.2 集合元素的添加和删除 42
1.8.3 集合的运算 42
1.9 处理日期和时间 45
1.9.1 获取日期和时间 45
1.9.2 格式化日期和时间 46
1.10 表达式 47
1.10.1 算术运算符 47
1.10.2 关系运算符 48
1.10.3 逻辑运算符 49
1.10.4 赋值/成员/身份运算符 50
1.10.5 运算符的优先级 50
1.11 流程控制 52
1.11.1 判断结构 52
1.11.2 循环结构——for循环 57
1.11.3 循环结构——while循环 61
1.11.4 其他结构 63
1.12 函数 65
1.12.1 内部函数 65
1.12.2 标准模块函数 67
1.12.3 自定义函数 69
1.12.4 变量的作用范围 75
1.12.5 匿名函数 77
1.13 模块 77
1.13.1 内置模块和第三方模块 77
1.13.2 自定义模块 78
1.14 工程 79
1.14.1 导入内置模块和第三方模块 79
1.14.2 导入自定义模块 80
1.15 异常处理 81
1.15.1 常见的异常 81
1.15.2 异常捕获——单分支的情况 82
1.15.3 异常捕获——多分支的情况 83
1.15.4 异常捕获——try…except…else… 84
1.15.5 异常捕获——try...finally... 84
第2章 Python文件操作 86
2.1 使用Python的open函数操作文件 86
2.1.1 open函数 86
2.1.2 创建文本文件并写入数据 87
2.1.3 读取文本文件数据 89
2.1.4 向文本文件中追加数据 90
2.1.5 读/写二进制文件数据 91
2.1.6 使用struct模块读取二进制文件 92
2.2 使用OS模块操作文件 93
2.2.1 文件操作 93
2.2.2 目录操作 95
2.2.3 路径操作 96
2.2.4 系统操作 97
对象模型篇
第3章 Excel对象模型:
OpenPyXl包 100
3.1 OpenPyXl包概述 100
3.1.1 Excel相关Python包的比较 100
3.1.2 OpenPyXI包及其安装 101
3.1.3 Excel对象模型 101
3.1.4 使用OpenPyXI包的一般过程 102
3.2 工作簿对象 102
3.2.1 创建、保存和关闭工作簿 102
3.2.2 打开已有的工作簿文件 103
3.3 工作表对象 104
3.3.1 创建和删除工作表 104
3.3.2 管理工作表 105
3.3.3 引用工作表 106
3.3.4 复制、移动工作表 106
3.3.5 行/列操作 107
3.3.6 工作表对象的其他属性和方法 113
3.4 单元格对象 114
3.4.1 单元格的引用和赋值 114
3.4.2 引用单元格区域 115
3.4.3 操作单元格区域 116
3.4.4 设置单元格样式 117
3.4.5 插入图片 128
3.4.6 插入公式 129
3.5 综合应用 129
3.5.1 批量新建和删除工作表 129
3.5.2 按列拆分工作表 131
3.5.3 将多个工作表分别保存为工作簿 133
3.5.4 将多个工作表合并为一个工作表 134
第4章 Excel对象模型:win32com和xlwings包 137
4.1 win32com和xlwings包概述 137
4.1.1 win32com包及其安装 137
4.1.2 xlwings包及其安装 139
4.2 Excel对象 139
4.2.1 Excel对象及其层次结构 139
4.2.2 使用win32com创建Excel对象 140
4.2.3 使用xlwings创建Excel对象 140
4.2.4 xlwings的两种编程方式 141
4.3 单元格对象 141
4.3.1 引用单元格 142
4.3.2 引用整行和整列 145
4.3.3 引用区域 147
4.3.4 引用所有单元格/特殊区域/区域的
集合 151
4.3.5 扩展引用当前工作表中的单元格
区域 154
4.3.6 引用末行或末列 156
4.3.7 引用特殊的单元格 158
4.3.8 获取区域的行数、列数、左上角
和右下角单元格的坐标、形状、
大小 159
4.3.9 插入单元格或区域 161
4.3.10 选择和清除单元格 162
4.3.11 复制、粘贴、剪切和删除单
元格 164
4.3.12 设置单元格的名称、批注和
字体 168
4.3.13 设置单元格的对齐方式、背景色
和边框 172
4.4 工作表对象 175
4.4.1 相关对象介绍 175
4.4.2 创建和引用工作表 175
4.4.3 激活、复制、移动和删除工作表 179
4.4.4 隐藏和显示工作表 182
4.4.5 选择行和列 183
4.4.6 复制、剪切行和列 185
4.4.7 插入行和列 187
4.4.8 删除行和列 189
4.4.9 设置行高和列宽 191
4.5 工作簿对象 193
4.5.1 创建和打开工作簿 193
4.5.2 引用、激活、保存和关闭工作簿 195
4.6 Excel应用对象 197
4.6.1 Application(App)对象和Apps
对象 197
4.6.2 定义位置、大小、标题、可见性
和状态属性 199
4.6.3 定义其他常用属性 201
4.7 数据读/写 202
4.7.1 Excel工作表与Python列表之间
的数据读/写 203
4.7.2 Excel工作表与Python字典之间
的数据读/写 207
4.7.3 Excel工作表与Python DataFrame
之间的数据读/写 208
4.8 综合应用 208
4.8.1 批量新建和删除工作表 208
4.8.2 按列拆分工作表 211
4.8.3 将多个工作表分别保存为工作簿 215
4.8.4 将多个工作表合并为一个工作表 217
图形图表篇
第5章 使用Python绘制Excel图形 224
5.1 创建图形 224
5.1.1 点 224
5.1.2 直线段 226
5.1.3 矩形、圆角矩形、椭圆形和圆形 226
5.1.4 多义线和多边形 228
5.1.5 曲线 229
5.1.6 标签 230
5.1.7 文本框 231
5.1.8 标注 231
5.1.9 自选图形 233
5.1.10 图表 234
5.1.11 艺术字 235
5.2 图形属性设置 237
5.2.1 颜色设置 237
5.2.2 线条属性:LineFormat对象 239
5.2.3 线条属性:颜色、线型和线宽 240
5.2.4 线条属性:箭头、透明度和图案
填充 241
5.2.5 线条属性:多义线、曲线和多边
形的顶点 243
5.2.6 面的属性:FillFormat对象、颜色
和透明度 245
5.2.7 面的属性:单色填充和渐变色
填充 246
5.2.8 面的属性:图案填充、图片填充
和纹理填充 250
5.2.9 文本属性 253
5.3 图形变换 254
5.3.1 图形平移 254
5.3.2 图形旋转 255
5.3.3 图形缩放 255
5.3.4 图形翻转 256
5.4 其他图形操作 257
5.4.1 遍历工作表中的图形 257
5.4.2 固定图形在工作表中的位置 260
5.4.3 动画 260
5.5 图片操作 261
5.5.1 创建图片 261
5.5.2 图片的几何变换 262
第6章 使用Python绘制Excel图表 263
6.1 创建图表 263
6.1.1 使用xlwings包创建图表 263
6.1.2 使用API方式创建图表 265
6.1.3 使用Shapes对象创建图表 266
6.1.4 绑定数据 269
6.2 图表及其序列设置 270
6.2.1 设置图表类型 270
6.2.2 Chart对象的常用属性和方法 271
6.2.3 设置序列 272
6.2.4 设置序列中单个点的属性 274
6.3 基本图形元素的属性设置 276
6.3.1 设置颜色 276
6.3.2 设置线形图形元素的属性 277
6.3.3 设置区域的透明度和颜色填充 277
6.3.4 设置区域的图案/图片/纹理填充 279
6.4 坐标系设置 280
6.4.1 设置Axes对象和Axis对象 280
6.4.2 设置坐标轴标题 281
6.4.3 设置数值轴取值范围 282
6.4.4 设置刻度线 283
6.4.5 设置刻度标签 283
6.4.6 设置网格线 285
6.4.7 设置多轴图 286
6.4.8 设置对数坐标图 287
6.4.9 设置其他属性 288
6.5 图表元素设置 290
6.5.1 SetElement方法 290
6.5.2 设置图表区域/绘图区 292
6.5.3 设置图例 293
6.6 输出图表 294
6.6.1 将图表复制到剪贴板 295
6.6.2 将图表保存为图片 296
数据处理篇
第7章 使用Python字典处理Excel
数据 298
7.1 数据提取 298
7.1.1 提取首次数据 298
7.1.2 提取末次数据 300
7.2 数据去重 302
7.2.1 使用列表去重 302
7.2.2 使用集合去重 304
7.2.3 使用字典去重 305
7.2.4 使用字典对象的fromkeys方法
去重 306
7.2.5 多表去重 308
7.2.6 跨表去重 309
7.3 数据查询 312
7.3.1 个案查询 312
7.3.2 多条件查询 313
7.4 数据汇总 314
7.4.1 出现次数汇总 315
猜您喜欢