提取码:dns6
- 内容简介
本书全面、系统、深入地讲解了Python编程基础语法与高级应用,在讲解过程中,通过大量实际操作的实例将Python语言知识全面、系统、深入地呈现给读者。此外,作者专门为本书录制了大量的配套教学视频,让读者通过分析实例、运行实例尽快熟悉Python编程,在学习中遇到问题时,也可以作为参考。
本书共分三篇。第一篇介绍Python语言的特点、安装、语法基础、程序流程控制、面向过程的编程方法、面向对象的编程方法、程序异常的处理;第二篇介绍了Python语言中的包与模块、迭代器、生成器、装饰器、上下文管理器等进阶语法,同时介绍了使用Python标准库中的文件系统处理、图形化界面编程、正则表达式、网络编程、多进(线)程编程、数据库编程。此外,还介绍了运用第三方库的Web网站编程、图片处理;第三篇通过两个案例介绍Python的综合编程技术。本书在内容上涉及面广,从基本操作到高级技术及综合案例,涉及Python语言的基础语法和编程特性。本书在设计上浅显易懂、实例丰富,尤其适合广大编程初学者自学,也适合对Python语言感兴趣的爱好者作为参考用书。
- 本书有何特色
- 细致体贴的讲解
为了让读者更快地上手,本书特别设计了适合初学者的学习方式,用准确的语言总结概念、用直观的图示演示过程、用详细的注释解释代码、用形象的比方帮助记忆。
知识点介绍 准确、清晰是其显著特点,一般放在每一节开始的位置,让零基础的读者了解相关概念,顺利入门。
范例 书中出现的完整实例,以章节顺序编号,便于检索和循序渐进地学习、实践,放在每节知识点介绍之后。
示例代码 与范例编号对应,层次清楚、语句简洁、注释丰富,体现了代码优美的原则,有利于读者养成良好的代码编写习惯。对于大段程序,均在每行代码前设定编号,便于学习。
运行结果 对范例给出运行结果和对应图示,帮助读者更直观地理解示例代码。
代码解析 将范例代码中的关键代码行逐一解释,有助于读者掌握相关概念和知识。
贴心的提示 为了便于读者阅读,全书还穿插着一些技巧、提示等小贴士,体例约定如下。
-
推荐的学习计划
列表如下:
![](https://img2020.cnblogs.com/blog/2104090/202007/2104090-20200725161617817-287345330.png)
![](https://img2020.cnblogs.com/blog/2104090/202007/2104090-20200725161631992-1066912056.png)
![](https://img2020.cnblogs.com/blog/2104090/202007/2104090-20200725161659520-1157040250.png)
-
本书适合哪些读者阅读
希望学习和使用Python语言的新手。
迫切希望全面深入地学习Python语言的程序人员。
具备一定编程经验的程序员。
希望了解和使用Python语言,并以它作为第二语言的编程人员。
目录
前言
第一篇 Python编程基础
第1章 编程与Python
1.1 什么是编程
1.1.1 硬件与软件
1.1.2 编程语言
1.1.3 编程与调试
1.2 选择Python的理由
1.2.1 Python是免费的自由软件
1.2.2 Python是跨平台的
1.2.3 Python功能强大
1.2.4 Python清晰优雅
1.3 安装Python
1.3.1 在Windows下安装Python
1.3.2 在Linux下安装Python
1.4 选择开发工具
1.4.1 Python自带开发工具:IDLE
1.4.2 文本编辑器:Emacs
1.4.3 Python开发工具:PythonWin
1.5 编辑和运行Python程序
1.5.1 你好,Python
1.5.2 运行程序文件
1.5.3 交互式运行Python
1.6 小结
1.7 本章习题
第2章 Python起步
2.1 Python语法基础
2.1.1 缩进分层
2.1.2 代码注释
2.1.3 断行
2.2 Python输入/输出
2.2.1 接收键盘/输入
2.2.2 显示处理结果
2.3 用Python计算
2.3.1 算式与代数式运算
2.3.2 惊奇
2.4 小结
2.5 本章习题
第3章 Python数据类型
3.1 Python简单数据类型
3.1.1 字符串(str)
3.1.2 整数(int)
3.1.3 浮点数(float)
3.1.4 类型转换
3.2 字符串进阶
3.2.1 原始字符串
3.2.2 格式化字符串
3.2.3 中文字符串处理
3.3 标志符与赋值号
3.3.1 标志符
3.3.2 “=”
3.4 Python结构数据类型
3.4.1 列表(list)
3.4.2 元组(tuple)
3.4.3 字典(dict)
3.5 内置常量与逻辑运算符、比较运算符
3.5.1 常用内置常量
3.5.2 Python中逻辑运算符
3.5.3 Python中比较运算符
3.5.4 Python中其他逻辑操作符
3.6 序列
3.6.1 序列切片
3.6.2 序列内置操作
3.7 小结
3.8 本章习题
第4章 控制语句执行流程
4.1 用if选择执行语句
4.1.1 if基础
4.1.2 if语句的嵌套
4.2 用for循环执行语句
4.2.1 for基础
4.2.2 for语句与break语句、continue语句
4.2.3 for语句与range()函数
4.2.4 for语句与内置迭代函数
4.3 用while循环执行语句
4.3.1 while基础
4.3.2 增量赋值运算符
4.4 推导或内涵(list comprehension)
6.3 类的属性和方法
6.3.1 类的方法
6.3.2 类的属性
6.3.3 类成员方法与静态方法
6.4 类的继承
6.4.1 类的继承
6.4.2 多重继承
6.4.3 方法重载
6.5 小结
6.6 本章习题
第7章 错误、异常和程序调试
7.1 语法错误
7.2 异常的处理
7.2.1 异常处理的基本语法
7.2.2 Python主要的内置异常及其处理
7.3 手工抛出异常
7.3.1 用raise手工抛出异常
7.3.2 assert语句
7.3.3 自定义异常类
7.4 用pdb调试程序
7.4.1 调试语句块函数
7.4.2 调试函数
7.5 测试程序
7.5.1 用testmod函数测试
7.5.2 用testfile函数测试
7.6 小结
7.7 本章习题第二篇 Python编程高阶
第8章 复杂程序组织
8.1 模块
8.1.1 模块概述
8.1.2 自己编写模块
8.1.3 模块位置
8.1.4 __pycache__目录
8.1.5 具有独立运行能力的模块
8.2 包
8.2.1 包概述
8.2.2 包详解
8.3 Python常用标准库简介
8.3.1 数学类模块
8.3.2 日期与时间类
8.4 小结
8.5 本章习题
第9章 迭代器、生成器与装饰器
9.1 迭代器
9.1.1 迭代器概述
9.1.2 自定义迭代器
9.1.3 内置迭代器工具
9.2 生成器
9.2.1 生成器创建
9.2.2 深入生成器
9.2.3 生成器与协程
9.3 装饰器
9.3.1 装饰器概述9.3.2 装饰函数
9.3.3 装饰类
9.4 小结
9.5 本章习题
第10章 Python进阶话题
10.1 函数与命名空间
10.2 闭包及其应用
10.2.1 闭包概述
10.2.2 闭包与延迟求值
10.2.3 闭包与泛型函数
10.3 上下文管理器
10.4 用字符串操作对象属性
10.5 用字典构造分支程序
10.6 重载类的特殊方法
10.7 鸭子类型(duck typing)与多态
10.8 小结
10.9 本章习题
第11章 文件与文件系统
11.1 文件操作基础
11.1.1 open()函数
11.1.2 用fileinput操作文件
11.2 常用文件和目录操作
11.2.1 获得当前路径
11.2.2 获得目录中的内容
11.2.3 创建目录
11.2.4 删除目录
11.2.5 判断是否是目录11.2.6 判断是否为文件
11.2.7 遍历某目录下的所有文件和目录
11.2.8 由文件名批量获取姓名和考号
11.2.9 批量文件重命名
11.3 编译为可执行文件
11.3.1 用py2exe生成可执行程序
11.3.2 用cx_freeze生成可执行文件
11.4 小结
11.5 本章习题
第12章 基于tkinter的GUI编程
12.1 GUI概述
12.1.1 GUI是什么
12.1.2 Python编写GUI程序库
12.2 tkinter图形化库简介
12.2.1 创建GUI程序第一步
12.2.2 创建GUI程序第二步
12.3 tkinter组件
12.3.1 组件分类
12.3.2 布局组件
12.4 常用tkinter组件
12.4.1 按钮
12.4.2 文本框
12.4.3 标签
12.4.4 菜单
12.4.5 单选框和复选框
12.4.6 绘制图形
12.5 响应操作事件12.5.1 事件基础
12.5.2 响应事件
12.6 对话框
12.6.1 标准对话框
12.6.2 自定义对话框
12.7 小结
12.8 本章习题
第13章 正则表达式
13.1 正则表达式基础
13.1.1 正则表达式概述
13.1.2 正则表达式基本元字符
13.1.3 常用正则表达式
13.2 re模块
13.2.1 正则匹配搜索函数
13.2.2 sub()与subn()函数
13.2.3 split()函数
13.2.4 正则表达式对象
13.3 分组匹配与匹配对象使用
13.3.1 分组基础
13.3.2 分组扩展
13.3.3 匹配对象与组的使用
13.3.4 匹配对象与索引使用
13.4 正则表达式应用示例
13.5 小结
13.6 本章习题
第14章 网络编程
14.1 网络编程基础14.1.1 什么是网络
14.1.2 网络协议
14.1.3 地址与端口
14.2 套接字的使用
14.2.1 用socket建立服务器端程序
14.2.2 用socket建立客户端程序
14.2.3 用socket建立基于UDP协议的服务器与客户端程序
14.2.4 用socketserver模块建立服务器
14.3 urllib与http包使用
14.3.1 urllib和http包简介
14.3.2 用urllib和http包访问网站
14.4 用poplib与smtplib库收发邮件
14.4.1 用poplib检查邮件
14.4.2 用smtplib发送邮件
14.5 用ftplib访问FTP服务
14.5.1 ftplib模块简介
14.5.2 使用Python访问FTP
14.6 小结
14.7 本章习题
第15章 线程和进程
15.1 线程
15.1.1 用threading.Thread直接在线程中运行函数
15.1.2 通过继承threading.Thread类来创建线程
15.1.3 线程类Thread使用
15.2 进程
15.2.1 进程基础
15.2.2 用Popen类创建进程15.3 小结
15.4 本章习题
第16章 数据库编程
16.1 Python数据库应用程序接口
16.1.1 数据库应用程序接口概述
16.1.2 数据库游标的使用
16.2 Python操作SQLite3数据库
16.2.1 SQLite3数据库简介
16.2.2 SQLite3数据库操作实例
16.3 Python操作MariaDB数据库
16.3.1 MariaDB数据库简介
16.3.2 建立MariaDB数据库操作环境
16.3.3 MariaDB数据库操作实例
16.4 Python操作MongoDB数据库
16.4.1 MongoDB数据库简介
16.4.2 建立MongoDB数据库操作环境
16.4.3 MongoDB数据库基础
16.4.4 MongoDB数据库操作实例
16.4.5 用对象关系映射(ORM)工具操作MongoDB数据
库
16.5 小结
16.6 本章习题
第17章 Web网站编程
17.1 Web网站编程概述
17.2 Flask Web框架及其应用
17.2.1 Flask Web框架简介
17.2.2 Flask Web框架初识17.2.3 URL装饰器与URL参数传递
17.2.4 GET与POST请求的参数传递
17.2.5 使用cookie与session跟踪客户
17.2.6 使用静态文件资源与页面文件
17.2.7 接收上传文件
17.2.8 Flask框架中使用数据库
17.3 Tornado Web框架及其应用
17.3.1 Tornado框架简介
17.3.2 Tornado框架初识
17.3.3 请求参数的获取
17.3.4 用cookie与安全cookie跟踪客户
17.3.5 URL转向与静态文件资源
17.3.6 Tornado Web框架应用举例
17.4 小结
17.5 本章习题
第18章 数据结构基础
18.1 表、栈和队列
18.1.1 用列表来创建表
18.1.2 自定义栈数据结构
18.1.3 实现队列功能
18.2 树和图
18.2.1 用列表构建树
18.2.2 实现二叉树类与遍历二叉树
18.2.3 用字典构建与搜索图
18.3 查找与排序
18.3.1 实现二分查找
18.3.2 用二叉树排序18.4 小结
18.5 本章习题
第19章 用Pillow库处理图片
19.1 第三方Pillow库概述
19.1.1 安装第三方Pillow库
19.1.2 Pillow库简介
19.1.3 Pillow库处理图像基础
19.1.4 Image模块中函数的使用
19.1.5 Image模块中Image类的使用
19.1.6 使用ImageChops模块进行图片合成
19.1.7 使用ImageEnhance模块增强图像效果
19.1.8 使用ImageFilter模块的滤镜
19.1.9 使用ImageDraw模块画图
19.2 使用Pillow库处理图片举例
19.2.1 图片格式转换
19.2.2 批量生成缩略图
19.2.3 为图片添加Logo
19.3 小结
19.4 本章习题
第三篇 Python编程实战
第20章 案例1 做一个Windows上的360工具
20.1 案例背景
20.2 从创建图形化界面开始
20.2.1 创建基本图形化工作界面
20.2.2 响应菜单事件
20.3 清理垃圾文件
20.3.1 迭代目录20.3.2 扫描垃圾文件
20.3.3 多线程加速
20.3.4 扫描所有磁盘
20.3.5 删除垃圾文件
20.4 搜索文件
20.4.1 搜索超大文件
20.4.2 按名称搜索文件
20.5 小结
第21章 案例2 Python搞定大数据
21.1 案例背景
21.1.1 大数据处理方式概述
21.1.2 处理日志文件
21.1.3 要实现的案例目标
21.2 分割日志文件
21.3 用Map函数处理小文件
21.4 用Reduce函数归集数据
21.5 小结