第一部分 Python编程基础
第1章 Python基础
1.1 在交互式环境中输入表达式
1.2 整型、浮点型和字符串数据类型
1.3 字符串连接和复制
1.4 在变量中保存值
1.5 第一个程序
1.6 程序剖析
1.7 小结
1.8 习题
第2章 控制流
2.1 布尔值
2.2 比较操作符
2.3 布尔操作符
2.4 混合布尔和比较操作符
2.5 控制流的元素
2.6 程序执行
2.7 控制流语句
2.8 导入模块
2.9 用sys.exit()提前结束程序
2.10 小结
2.11 习题
第3章 函数
3.1 def语句和参数
3.2 返回值和return语句
3.3 None值
3.4 关键字参数和print()
3.5 局部和全局作用域
3.6 global语句
3.7 异常处理
3.8 一个小程序:猜数字
3.9 小结
3.10 习题
3.11 实践项目
第4章 列表
4.1 列表数据类型
4.2 使用列表
4.3 增强的赋值操作
4.4 方法
4.5 例子程序:神奇8球和列表
4.6 类似列表的类型:字符串和元组
4.7 引用
4.8 小结
4.9 习题
4.10 实践项目
第5章 字典和结构化数据
5.1 字典数据类型
5.2 漂亮打印
5.3 使用数据结构对真实世界建模
5.4 小结
5.5 习题
5.6 实践项目
第6章 字符串操作
6.1 处理字符串
6.2 有用的字符串方法
6.3 项目:口令保管箱
6.4 项目:在Wiki标记中添加无序列表
6.5 小结
6.6 习题
6.7 实践项目
第二部分 自动化任务
第7章 模式匹配与正则表达式
7.1 不用正则表达式来查找文本模式
7.2 用正则表达式查找文本模式
7.3 用正则表达式匹配更多模式
7.4 贪心和非贪心匹配
7.5 findall()方法
7.6 字符分类
7.7 建立自己的字符分类
7.8 插入字符和美元字符
7.9 通配字符
7.10 正则表达式符号复习
7.11 不区分大小写的匹配
7.12 用sub()方法替换字符串
7.13 管理复杂的正则表达式
7.14 组合使用re.IGNOREC ASE、re.DOTALL和re.VERBOSE
7.15 项目:电话号码和Email地址提取程序
7.16 小结
7.17 习题
7.18 实践项目
第8章 读写文件
8.1 文件与文件路径
8.2 文件读写过程
8.3 用shelve模块保存变量
8.4 用pprint.pformat()函数保存变量
8.5 项目:生成随机的测验试卷文件
8.6 项目:多重剪贴板
8.7 小结
8.8 习题
8.9 实践项目
第9章 组织文件
9.1 shutil模块
9.7 用zipfile模块压缩文件
9.4 项目:将带有美国风格日期的文件改名为欧洲风格日期
9.5 项目:将一个文件夹备份到一个ZIP文件
9.6 小结
9.7 习题
9.8 实践项目
第10章 调试
10.1 抛出异常
10.2 取得反向跟踪的字符串
10.3 断言
10.4 日志
10.5 IDLE的调试器
10.6 小结
10.7 习题
10.7 实践项目
第11章 从Web抓取信息
11.1 项目:利用webbrowser模块的mapIt.py
11.2 用requests模块从Web下载文件
10.3 将下载的文件保存到硬盘
10.4 HTML
10.5 用BeautifulSoup模块解析HTML
10.6 项目:“I’m Feeling Lucky”Google查找
10.7 项目:下载所有XKCD漫画
10.8 用selenium模块控制浏览器
10.9 小结
10.10 习题
10.11 实践项目
第12章 处理Excel电子表格
12.1 Excel文档
12.2 安装openpyxl模块
12.3 读取Excel文档
12.4 项目:从电子表格中读取数据
12.5 写入Excel文档
12.6 项目:更新一个电子表格
12.7 设置单元格的字体风格
12.8 Font对象
12.9 公式
12.10 调整行和列
12.11 小结
12.11 习题
12.12 实践项目
第13章 处理PDF和Word文档
13.1 PDF文档
13.2 项目:从多个PDF中合并选择的页面
13.3 Word文档
13.4 小结
13.5 习题
13.6 实践项目
第14章 处理CSV文件和JSON数据
14.1 csv模块
14.3 项目:从CSV文件中删除表头
14.4 JSON和API
14.5 json模块
14.6 项目:取得当前的天气数据
14.7 小结
14.8 习题
14.9 实践项目
第15章 保持时间、计划任务和启动程序
15.1 time模块
15.2 数字四舍五入
15.3 项目:超级秒表
15.4 datetime模块
15.5 回顾Python的时间函数
15.6 多线程
15.7 项目:多线程XKCD下载程序
15.8 从Python启动其他程序
15.9 项目:简单的倒计时程序
15.10 小结
15.11 习题
15.12 实践项目
第16章 发送电子邮件和短信
16.1 SMTP
16.2 发送电子邮件
16.3 IMAP
16.4 用IMAP获取和删除电子邮件
16.5 项目:向会员发送会费提醒电子邮件
16.6 用Twilio发送短信
16.7 项目:“只给我发短信”模块
16.8 小结
16.9 习题
16.10 实践项目
第17章 操作图像
17.1 计算机图像基础
17.2 用Pillow操作图像
17.3 项目:添加徽标
17.4 在图像上绘画
17.5 小结
17.6 习题
17.7 实践项目
第18章 用GUI自动化控制键盘和鼠标
18.1 安装pyautogui模块
18.2 走对路
18.3 控制鼠标移动
18.4 项目:“现在鼠标在哪里?”
18.5 控制鼠标交互
18.6 处理屏幕
18.7 项目:扩展mouseNow程序
18.8 图像识别
18.9 控制键盘
18.10 复习PyAutoGUI的函数
18.11 项目:自动填表程序
18.12 小结
18.13 习题
18.14 实践项目
附录A 安装第三方模块
附录B 运行程序
附录C 习题答案