| 作者 |
| 王启明 罗从良 |
| 丛书名 |
| 出版社 |
| 清华大学出版社 |
| ISBN |
| 9787302509301 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 随着大数据技术的发展及Python在人工智能领域的火热应用,Python得到越来越多的应用。本书就是在这个背景下编写的,是一本Python 3.6入门教材,特别适合想直接切入爬虫编程及大数据分析处理的读者学习使用。本书赠送示例源代码与教学视频。 本书分为16章,主要内容包括开发环境、数据结构、函数、面向对象、多线程、模块、包、GUI模块、图形模块、正则模块、文件处理模块、网络编程模块和爬虫模块等,并且为每个模块提供了实战示例,*后用两章来介绍数据库编程实战和爬虫框架实战。 本书内容详尽、示例丰富,适合广大Python入门读者和Python开发人员阅读,同时也可作为高等院校和培训学校计算机相关专业的师生教学参考。 |
| 目录 |
| 录 第1章 搭建Python开发环境 1 1.1 Python的版本说明 1 1.2 Python的安装 2 1.2.1 Windows下安装Python 2 1.2.2 Linux下安装Python 6 1.3 打开Python的方式 8 1.4 交互模式解释器 9 1.5 第一个Python程序Hello World 10 1.5.1 交互式 10 1.5.2 脚本式 10 1.6 Python开发工具 11 1.6.1 Python自带集成开发环境IDEL 11 1.6.2 安装PyCharm集成开发环境 14 1.6.3 使用PyCharm集成开发环境 21 1.7 注意Python的缩进 22 第2章 Python中的数据与结构 24 2.1 Python中的标准数据类型 24 2.2 变量 25 2.3 数字 26 2.3.1 使用整型 26 2.3.2 使用浮点型 27 2.3.3 使用布尔型 28 2.3.4 使用复数型 29 2.4 字符串 29 2.4.1 字符串的单引号、双引号、三引号 29 2.4.2 字符串的截取 30 2.4.3 字符串的拼接 31 2.4.4 字符串的各种常用运算符 32 2.4.5 字符串的转义 33 2.4.6 字符串的格式化符号 34 2.4.7 字符串的内置函数 37 2.5 列表 39 2.5.1 使用列表 39 2.5.2 访问列表 40 2.5.3 列表常用的内置函数 41 2.5.4 列表排序 43 2.5.5 删除列表 44 2.5.6 获取列表中的最大值和最小值 45 2.5.7 列表常用运算符 45 2.6 元组 46 2.6.1 使用元组 46 2.6.2 访问元组 47 2.6.3 元组常用的内置函数 47 2.6.4 删除元组 48 2.6.5 获取元组中的最大值和最小值 48 2.6.6 元组常用运算符 48 2.6.7 元组与列表的转换 49 2.7 字典 49 2.7.1 使用字典 49 2.7.2 访问字典 50 2.7.3 字典常用的内置函数 50 2.7.4 删除字典 52 2.7.5 字典常用运算符 53 2.8 集合 53 2.8.1 使用集合 54 2.8.2 集合常用的内置函数 54 2.8.3 集合常用运算符(交集、并集、差集、对称差集) 56 2.9 推导式 57 2.9.1 初识推导 57 2.9.2 嵌套推导 58 2.10 数据结构实战:文本统计分析 59 2.10.1 文本统计功能 59 2.10.2 文本比较功能 60 第3章 结构语句 62 3.1 顺序、选择和循环 62 3.1.1 顺序结构 62 3.1.2 选择结构 63 3.1.3 循环结构 64 3.2 用if选择 64 3.2.1 选择语句格式 65 3.2.2 选择语句详解 66 3.2.3 选择语句的嵌套 66 3.3 用while循环 67 3.3.1 while语句基本格式 67 3.3.2 while语句的应用 68 3.3.3 无限循环(死循环) 69 3.3.4 带else的while循环 70 3.4 用for循环 71 3.4.1 for语句基本格式 71 3.4.2 for语句的应用 71 3.4.3 for与range结合遍历数字序列 72 3.5 中断语句break、continue 73 3.5.1 break语句 73 3.5.2 continue语句 74 3.6 循环实战:九九乘法表 75 第4章 函数 77 4.1 使用函数 77 4.1.1 定义函数 77 4.1.2 函数的返回值 78 4.1.3 函数的嵌套 78 4.2 函数的参数 79 4.2.1 形参、实参 79 4.2.2 必要参数 79 4.2.3 有默认值的参数 80 4.2.4 关键字参数 81 4.2.5 不定长参数(可变参数) 82 4.2.6 各种参数组合 83 4.3 全局变量、局部变量 83 4.3.1 全局和局部的概念 83 4.3.2 函数中局部变量的作用域 84 4.3.3 global全局变量 84 4.4 匿名函数 85 4.4.1 使用匿名函数 85 4.4.2 匿名函数的参数默认值 86 4.5 函数实战:八皇后问题 86 第5章 面向对象编程 92 5.1 面向对象基础 92 5.2 定义与使用类 93 5.2.1 类的定义 93 5.2.2 类的构造方法和析构方法 94 5.2.3 类的私有属性 95 5.2.4 类的私有方法 96 5.2.5 一个完整的类 96 5.3 类与类的关系 97 5.3.1 单继承 98 5.3.2 多继承 99 5.3.3 类的关联和依赖 99 5.3.4 类的聚合和复合 101 5.4 重写 102 5.5 魔术方法 102 5.5.1 魔术方法的概念 102 5.5.2 魔术方法的应用 103 5.6 迭代器 106 5.7 生成器 107 5.7.1 生成器的概念 107 5.7.2 生成器的应用 107 5.8 装饰器 108 5.8.1 装饰器基础 108 5.8.2 不带参数的装饰器 109 5.8.3 带参数的装饰器 110 5.8.4 多个装饰器装饰一个函数 111 5.9 上下文管理器与with语句 112 5.9.1 上下文管理器的几个概念 112 5.9.2 上下文管理器的应用 113 5.9.3 自定义上下文管理器 113 5.10 面向对象实战:数字图形 114 5.10.1 需求分析 114 5.10.2 程序开发 118 5.10.3 程序入口 123 第6章 程序异常与调试 124 6.1 识别异常 124 6.1.1 异常的概念 124 6.1.2 语法引出的异常 125 6.1.3 运行时引出的异常 125 6.1.4 分析异常提示信息 125 6.2 Python中处理异常的语法 126 6.3 处理异常的细节 127 6.3.1 except语句的多种形式 127 6.3.2 抛出异常(引发异常)raise 130 6.4 自定义异常 130 6.5 调试程序 131 6.5.1 IDLE的简单调试 131 6.5.2 利用日志模块logging调试 132 6.5.3 利用pdb调试 133 6.6 异常实战:计算机猜数 135 6.6.1 需求分析 135 6.6.2 算法分析 136 6.6.3 编程实现 138 6.6.4 异常处理 141 6.6.5 异常类定义 141 6.6.6 抛出和捕获异常 142 第7章 多线程 145 7.1 线程的概念 145 7.2 创建多线程 146 7.2.1 通过threading.Thread()创建线程 146 7.2.2 通过继承threading.Thread类创建线程 147 7.3 主 线 程 148 7.4 阻塞线程 149 7.5 判断线程是否是活动的 150 7.6 线程同步 152 7.6.1 同步的概念 152 7.6.2 Python中的锁 153 7.6.3 Python中的条件锁 153 第8章 模块和包 157 8.1 模块 157 8.1.1 标准库中的模块 157 8.1.2 查看模块的代码 158 8.2 导入模块 160 8.2.1 最简单的导入 160 8.2.2 from…import语句 161 8.2.3 from…import *语句 162 8.2.4 导入自定义的模块 162 8.3 包 163 8.3.1 包和模块的区别 163 8.3.2 包的结构 164 8.3.3 导入自定义的包 164 8.4 命名空间 165 8.4.1 命名空间 166 8.4.2 全局命名空间 167 8.4.3 局部命名空间 168 8.4.4 命名空间和类 169 8.4.5 命名空间和类的实例化 170 8.4.6 命名空间和类的继承 172 第9章 Tkinter模块图形界面编程 174 9.1 Tkinter模块 174 9.1.1 Tkinter模块的Hello World 程序 175 9.1.2 tkinter包介绍 177 9.1.3 主窗口 178 9.2 Tkinter控件 179 9.2.1 控件的介绍 179 9.2.2 控件的特性 181 9.2.3 Tkinter几何管理器 182 9.2.4 Tkinter 事件及回调 185 9.3 Tkinter实战 186 9.3.1 创建主窗口 186 9.3.2 添加菜单栏及菜单选项 186 9.3.3 添加下拉菜单 188 9.3.4 实现简单记事本 190 第10章 re模块正则表达式 193 10.1 正则表达式简介 193 10.1.1 正则表达式概念 193 10.1.2 正则表达式构成 194 10.2 re模块的简单应用 196 10.3 常用正则表达式 199 10.3.1 常用数字表达式的校验 200 10.3.2 常用字符表达式的校验 202 10.3.3 特殊需求表达式的校验 203 第11章 os模块与shutil模块文件处理 206 11.1 os模块 206 11.1.1 获取系统类型 206 11.1.2 获取系统环境 207 11.1.3 执行系统命令 208 11.1.4 操作及文件 209 11.2 shutil模块 214 11.2.1 复制文件 214 11.2.2 移动文件 216 11.2.3 读取压缩及归档压缩文件 216 11.2.4 解压文件 217 11.3 文件处理实战 217 第12章 PIL(Pillow)模块图像实战 220 12.1 Pillow库简介与安装 220 12.1.1 Pillow库的介绍 221 12.1.2 Pillow库的安装 221 12.2 Image类的使用 222 12.2.1 Image类的属性 222 12.2.2 Image类的函数 223 12.3 图像的基本合成 231 12.3.1 调用Image.composite接口 231 12.3.2 调用Image.blend接口 232 12.3.3 调用Image.paste接口 232 12.4 图像的变换 233 12.4.1 图像格式及尺寸变换 233 12.4.2 图像通道变换 234 12.4.3 图像几何变换 235 12.4.4 图像变换成OpenCV格式 235 12.5 图像处理实战 236 第13章 socket模块网络编程 237 13.1 网络编程基础 237 13.1.1 网络协议 237 13.1.2 IP地址与端口 239 13.1.3 socket 240 13.2 使用TCP的服务器与客户端 246 13.2.1 TCP工作原理 246 13.2.2 TCP服务器的实现 247 13.2.3 TCP客户端的实现 248 13.3 使用UDP的服务器与客户端 250 13.3.1 UDP工作原理 251 13.3.2 UDP服务器的实现 251 13.3.3 UDP客户端的实现 252 13.4 网络编程实战 253 第14章 urllib工具包网络爬虫编程 257 14.1 urllib、urllib2与urllib3的异同 257 14.2 request模块 259 14.2.1 urlopen()、build_opener()和build_opener()方法 260 14.2.2 Request类 263 14.2.3 其他类 266 14.3 error模块 267 14.4 parse模块 268 14.4.1 URL解析 268 14.4.2 URL转义 271 14.5 robotparser模块 274 14.6 urllib网络爬虫实战 275 第15章 Python数据库编程实战 278 15.1 操作SQLite 278 15.1.1 创建SQLite数据库 278 15.1.2 创建SQLite数据表 279 15.1.3 为数据表添加数据 280 15.1.4 查询数据 280 15.1.5 更新数据 281 15.1.6 删除数据 281 15.1.7 connect和cursor的各种函数 281 15.2 操作MySQL 282 15.2.1 安装PyMySQL库 282 15.2.2 连接MySQL数据库 283 15.2.3 增、删、查、改数据 284 15.3 使用ORM框架SQLAlchemy操作MySQL 284 15.3.1 ORM的意义 285 15.3.2 安装SQLAlchemy 285 15.3.3 导入SQLAlchemy 286 15.3.4 使用SQLAlchemy操作数据库 286 第16章 Scrapy爬虫实战 288 16.1 安装Scrapy 288 16.1.1 Windows下安装Scrapy环境 288 16.1.2 Linux下安装Scrapy 289 16.1.3 vim编辑器 290 16.2 Scrapy选择器XPath和CSS 291 16.2.1 XPath选择器 291 16.2.2 CSS选择器 294 16.2.3 其他选择器 295 16.3 天气预报项目 296 16.3.1 项目准备 296 16.3.2 创建编辑Scrapy爬虫 297 16.3.3 数据存储到json 303 16.3.4 数据存储到MySQL 305 |