本书得到了JetBrains大中华区市场经理赵磊作序推荐!本书不仅提供了理论知识,而且赠送教学课件24章,300个示例源代码,4个完整实战项目,提供实时在线答疑服务,出版至今热销10万册。本书是一本真正的Python百科全书,内容全面涵盖编程门、语法基础、科学计算、爬虫技术,涵盖300的示例源码。一本立体化教程。赠送学习视频教程:所有本书的读者均可获赠约50小时(约25000分钟)的“Python从小白到大牛全集”视频课程:
售 价:¥
纸质售价:¥70.30购买纸书
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
封面页
书名页
版权页
作者简介
内容简介
推荐序
前言
本书配套资源
本书学习路线图
第一篇 Python基础
第1章 开篇综述
1.1 Python语言历史
1.2 Python语言设计哲学——Python之禅
1.3 Python语言特点
1.4 Python语言应用前景
1.5 如何获得帮助
第2章 搭建开发环境
2.1 搭建Python环境
2.2 PyCharm开发工具
2.2.1 下载和安装
2.2.2 设置Python解释器
2.3 Eclipse+PyDev开发工具
2.3.1 Eclipse下载和安装
2.3.2 安装PyDev插件
2.3.3 设置Python解释器
2.3.4 设置UTF-8编码
2.4 Visual Studio Code开发工具
2.5 文本编辑工具
本章小结
第3章 第一个Python程序
3.1 使用Python Shell实现
3.2 使用PyCharm实现
3.2.1 创建项目
3.2.2 创建Python代码文件
3.2.3 编写代码
3.2.4 运行程序
3.3 使用Eclipse+PyDev插件实现
3.3.1 创建项目
3.3.2 创建Python代码文件
3.3.3 运行程序
3.4 使用Visual Studio Code实现
3.4.1 创建Python代码文件
3.4.2 运行程序
3.5 文本编辑工具+Python解释器实现
3.5.1 编写代码
3.5.2 运行程序
3.6 代码解释
本章小结
第4章 Python语法基础
4.1 标识符和关键字
4.1.1 标识符
4.1.2 关键字
4.2 变量和常量
4.2.1 变量
4.2.2 常量
4.3 注释
4.4 语句
4.5 模块
4.6 包
4.6.1 创建包
4.6.2 导入包
本章小结
第5章 Python编码规范
5.1 命名规范
5.2 注释规范
5.2.1 文件注释
5.2.2 文档注释
5.2.3 代码注释
5.2.4 使用TODO注释
5.3 导入规范
5.4 代码排版
5.4.1 空行
5.4.2 空格
5.4.3 缩进
5.4.4 断行
本章小结
第6章 数据类型
6.1 数字类型
6.1.1 整数类型
6.1.2 浮点类型
6.1.3 复数类型
6.1.4 布尔类型
6.2 数字类型相互转换
6.2.1 隐式类型转换
6.2.2 显式类型转换
6.3 字符串类型
6.3.1 字符串表示方式
6.3.2 字符串格式化
6.3.3 字符串查找
6.3.4 字符串与数字相互转换
本章小结
第7章 运算符
7.1 算术运算符
7.1.1 一元运算符
7.1.2 二元运算符
7.2 关系运算符
7.3 逻辑运算符
7.4 位运算符
7.5 赋值运算符
7.6 其他运算符
7.6.1 同一性测试运算符
7.6.2 成员测试运算符
7.7 运算符优先级
本章小结
第8章 控制语句
8.1 分支语句
8.1.1 if结构
8.1.2 if-else结构
8.1.3 elif结构
8.1.4 三元运算符替代品——条件表达式
8.2 循环语句
8.2.1 while语句
8.2.2 for语句
8.3 跳转语句
8.3.1 break语句
8.3.2 continue语句
8.3.3 while和for中的else语句
8.4 使用范围
本章小结
第二篇 Python进阶
第9章 数据结构
9.1 元组
9.1.1 序列
9.1.2 创建元组
9.1.3 访问元组
9.1.4 遍历元组
9.2 列表
9.2.1 列表创建
9.2.2 追加元素
9.2.3 插入元素
9.2.4 替换元素
9.2.5 删除元素
9.2.6 其他常用方法
9.2.7 列表推导式
9.3 集合
9.3.1 创建可变集合
9.3.2 修改可变集合
9.3.3 遍历集合
9.3.4 不可变集合
9.3.5 集合推导式
9.4 字典
9.4.1 创建字典
9.4.2 修改字典
9.4.3 访问字典
9.4.4 遍历字典
9.4.5 字典推导式
本章小结
第10章 函数式编程
10.1 定义函数
10.2 函数参数
10.2.1 使用关键字参数调用函数
10.2.2 参数默认值
10.2.3 可变参数
10.3 函数返回值
10.3.1 无返回值函数
10.3.2 多返回值函数
10.4 函数变量作用域
10.5 生成器
10.6 嵌套函数
10.7 函数式编程基础
10.7.1 函数类型
10.7.2 Lambda表达式
10.7.3 三大基础函数
本章小结
第11章 面向对象编程
11.1 面向对象概述
11.2 面向对象三个基本特性
11.2.1 封装性
11.2.2 继承性
11.2.3 多态性
11.3 类和对象
11.3.1 定义类
11.3.2 创建和使用对象
11.3.3 实例变量
11.3.4 类变量
11.3.5 构造方法
11.3.6 实例方法
11.3.7 类方法
11.3.8 静态方法
11.4 封装性
11.4.1 私有变量
11.4.2 私有方法
11.4.3 定义属性
11.5 继承性
11.5.1 继承概念
11.5.2 重写方法
11.5.3 多继承
11.6 多态性
11.6.1 多态概念
11.6.2 类型检查
11.6.3 鸭子类型
11.7 Python根类——object
11.7.1 _str_()方法
11.7.2 对象比较方法
11.8 枚举类
11.8.1 定义枚举类
11.8.2 限制枚举类
11.8.3 使用枚举类
本章小结
第12章 异常处理
12.1 异常问题举例
12.2 异常类继承层次
12.3 常见异常
12.3.1 AttributeError异常
12.3.2 OSError异常
12.3.3 IndexError异常
12.3.4 KeyError异常
12.3.5 NameError异常
12.3.6 TypeError异常
12.3.7 ValueError异常
12.4 捕获异常
12.4.1 try-except语句
12.4.2 多except代码块
12.4.3 try-except语句嵌套
12.4.4 多重异常捕获
12.5 异常堆栈跟踪
12.6 释放资源
12.6.1 finally代码块
12.6.2 else代码块
12.6.3 with as代码块自动资源管理
12.7 自定义异常类
12.8 显式抛出异常
本章小结
第13章 常用模块
13.1 math模块
13.1.1 舍入函数
13.1.2 幂和对数函数
13.1.3 三角函数
13.2 random模块
13.3 datetime模块
13.3.1 datetime、date和time类
13.3.2 日期时间计算
13.3.3 日期时间格式化和解析
13.3.4 时区
13.4 logging日志模块
13.4.1 日志级别
13.4.2 日志信息格式化
13.4.3 日志重定位
13.4.4 使用配置文件
本章小结
第14章 正则表达式
14.1 正则表达式字符串
14.1.1 元字符
14.1.2 字符转义
14.1.3 开始与结束字符
14.2 字符类
14.2.1 定义字符类
14.2.2 字符类取反
14.2.3 区间
14.2.4 预定义字符类
14.3 量词
14.3.1 量词的使用
14.3.2 贪婪量词和懒惰量词
14.4 分组
14.4.1 分组的使用
14.4.2 分组命名
14.4.3 反向引用分组
14.4.4 非捕获分组
14.5 re模块
14.5.1 search()和match()函数
14.5.2 findall()和finditer()函数
14.5.3 字符串分割
14.5.4 字符串替换
14.6 编译正则表达式
14.6.1 已编译正则表达式对象
14.6.2 编译标志
本章小结
第15章 文件操作与管理
15.1 文件操作
15.1.1 打开文件
15.1.2 关闭文件
15.1.3 文本文件读写
15.1.4 二进制文件读写
15.2 os模块
15.3 os.path模块
本章小结
第三篇 Python高级实用库与框架
第16章 数据交换格式
16.1 CSV数据交换格式
16.1.1 reader()函数
16.1.2 writer()函数
16.2 XML数据交换格式
16.2.1 XML文档结构
16.2.2 解析XML文档
16.2.3 XPath
16.3 JSON数据交换格式
16.3.1 JSON文档结构
16.3.2 JSON数据编码
16.3.3 JSON数据解码
16.4 配置文件
16.4.1 配置文件结构
16.4.2 读取配置文件
16.4.3 写入配置文件
本章小结
第17章 数据库编程
17.1 数据持久 化技术概述
17.2 MySQL数据库管理系统
17.2.1 数据库安装与配置
17.2.2 连接MySQL服务器
17.2.3 常见的管理命令
17.3 Python DB-API
17.3.1 建立数据连接
17.3.2 创建游标
17.4 案例:MySQL数据库CRUD操作
17.4.1 安装PyMySQL模块
17.4.2 数据库编程的一般过程
17.4.3 数据查询操作
17.4.4 数据修改操作
17.5 NoSQL数据存储
17.5.1 dbm数据库的打开和关闭
17.5.2 dbm数据存储
本章小结
第18章 网络编程
18.1 网络基础
18.1.1 网络结构
18.1.2 TCP/IP协议
18.1.3 IP地址
18.1.4 端口
18.2 TCP Socket低层次网络编程
18.2.1 TCP Socket通信概述
18.2.2 TCP Socket通信过程
18.2.3 TCP Socket编程API
18.2.4 案例:简单聊天工具
18.2.5 案例:文件上传工具
18.3 UDP Socket低层次网络编程
18.3.1 UDP Socket编程API
18.3.2 案例:简单聊天工具
18.3.3 案例:文件上传工具
18.4 访问互联网资源
18.4.1 URL概念
18.4.2 HTTP/HTTPS协议
18.4.3 使用urllib库
18.4.4 发送GET请求
18.4.5 发送POST请求
18.4.6 实例:Downloader
本章小结
第19章 wxPython图形用户界面编程
19.1 Python图形用户界面开发工具包
19.2 wxPython安装
19.3 wxPython基础
19.3.1 wxPython类层次结构
19.3.2 第一个wxPython程序
19.3.3 wxPython界面构建层次结构
19.4 事件处理
19.4.1 一对一事件处理
19.4.2 一对多事件处理
19.4.3 示例:鼠标事件处理
19.5 布局管理
19.5.1 Box布局器
19.5.2 StaticBox布局
19.5.3 Grid布局
19.5.4 FlexGrid布局
19.6 wxPython控件
19.6.1 静态文本和按钮
19.6.2 文本输入控件
19.6.3 复选框和单选按钮
19.6.4 下拉列表
19.6.5 列表
19.6.6 静态图片控件
19.7 高级窗口
19.7.1 分隔窗口
19.7.2 使用树
19.7.3 使用网格
19.8 使用菜单
19.9 使用工具栏
本章小结
第20章 Python多线程编程
20.1 基础知识
20.1.1 进程
20.1.2 线程
20.2 threading模块
20.3 创建线程
20.3.1 自定义函数作为线程体
20.3.2 继承Thread线程类实现线程体
20.4 线程管理
20.4.1 等待线程结束
20.4.2 线程停止
20.5 线程安全
20.5.1 临界资源问题
20.5.2 多线程同步
20.6 线程间通信
20.6.1 使用Condition实现线程间通信
20.6.2 使用Event实现线程间通信
本章小结
第四篇 项目实战
第21章 项目实战1:网络爬虫与爬取股票数据
21.1 网络爬虫技术概述
21.1.1 网络通信技术
21.1.2 多线程技术
21.1.3 数据交换技术
21.1.4 Web前端技术
21.1.5 数据分析技术
21.1.6 数据存储技术
21.2 爬取数据
21.2.1 网页中静态和动态数据
21.2.2 使用urllib爬取数据
21.2.3 使用Selenium爬取数据
21.3 分析数据
21.3.1 使用正则表达式
21.3.2 使用BeautifulSoup库
21.4 项目实战:爬取纳斯达克股票数据
21.4.1 爬取数据
21.4.2 检测数据是否更新
21.4.3 分析数据
21.4.4 保存数据到数据库
21.4.5 爬虫工作计划任务
第22章 项目实战2:数据可视化与股票数据分析
22.1 使用Matplotlib绘制图表
22.1.1 安装Matplotlib
22.1.2 图表基本构成要素
22.1.3 绘制折线图
22.1.4 绘制柱状图
22.1.5 绘制饼状图
22.1.6 绘制散点图
22.1.7 绘制子图表
22.2 项目实战:纳斯达克股票数据分析
22.2.1 从数据库提取股票数据
22.2.2 绘制股票成交量折线图
22.2.3 绘制股票OHLC柱状图
22.2.4 绘制股票K线图
第23章 项目实战3:PetStore宠物商店项目
23.1 系统分析与设计
23.1.1 项目概述
23.1.2 需求分析
23.1.3 原型设计
23.1.4 数据库设计
23.1.5 架构设计
23.1.6 系统设计
23.2 任务1:创建数据库
23.2.1 迭代1.1:安装和配置MySQL数据库
23.2.2 迭代1.2:编写数据库DDL脚本
23.2.3 迭代1.3:插入初始数据到数据库
23.3 任务2:初始化项目
23.3.1 迭代2.1:添加资源图片
23.3.2 迭代2.2:添加包
23.4 任务3:编写数据持久层代码
23.4.1 迭代3.1:数据库配置文件
23.4.2 迭代3.2:编写DAO基类
23.4.3 迭代3.3:用户管理DAO
23.4.4 迭代3.4:商品管理DAO
23.4.5 迭代3.5:订单管理DAO
23.4.6 迭代3.6:订单明细管理DAO
23.5 任务4:编写表示层代码
23.5.1 迭代4.1:编写启动模块
23.5.2 迭代4.2:编写自定义窗口类——MyFrame
23.5.3 迭代4.3:用户登录窗口
23.5.4 迭代4.4:商品列表窗口
23.5.5 迭代4.5:商品购物车窗口
23.6 任务5:发布可执行文件
23.6.1 迭代5.1:处理TODO任务
23.6.2 迭代5.2:发布为可执行文件
第24章 项目实战4:开发Python版QQ2006聊天工具
24.1 系统分析与设计
24.1.1 项目概述
24.1.2 需求分析
24.1.3 原型设计
24.1.4 数据库设计
24.1.5 网络拓扑图
24.1.6 系统设计
24.2 任务1:创建服务器端数据库
24.2.1 迭代1.1:安装和配置MySQL数据库
24.2.2 迭代1.2:编写数据库DDL脚本
24.2.3 迭代1.3:插入初始数据到数据库
24.3 任务2:初始化项目
24.3.1 迭代2.1:添加资源图片
24.3.2 迭代2.2:添加包
24.4 任务3:编写服务器端数据持久层
24.4.1 迭代3.1:数据库配置文件
24.4.2 迭代3.2:编写base_dao模块
24.4.3 迭代3.3:编写用户管理DAO类
24.5 任务4:客户端UI实现
24.5.1 迭代4.1:编写my_frame模块
24.5.2 迭代4.2:登录窗口实现
24.5.3 迭代4.3:好友列表窗口实现
24.5.4 迭代4.4:聊天窗口实现
24.6 任务5:用户登录过程实现
24.6.1 迭代5.1:客户端启动
24.6.2 迭代5.2:客户端登录编程
24.6.3 迭代5.3:服务器端启动
24.6.4 迭代5.4:服务器端验证编程
24.7 任务6:刷新好友列表
24.7.1 迭代6.1:刷新好友列表服务器端编程
24.7.2 迭代6.2:刷新好友列表客户端编程
24.8 任务7:聊天过程实现
24.8.1 迭代7.1:客户端用户1向服务器发送消息
24.8.2 迭代7.2:服务器端接收用户1消息与转发给用户3消息
24.8.3 迭代7.3:客户端用户3接收用户1消息
24.9 任务8:用户下线
24.9.1 迭代8.1:客户端编程
24.9.2 迭代8.2:服务器端编程
附录CD
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜