Python 3 从入门到实战 PDF 文档

发布于 2024-03-30 01:53:25 字数 7495 浏览 28 评论 0

本书是一本语法与实践相结合的 Python 入门教程,全书分为上、下篇。上篇为 Python 语法与实践,以简明的语言、易懂的案例介绍 Python 的变量与对象、运算符与表达式、控制语句、函数、内置数据类型,Python 的面向对象特征,如类与对象、派生类、类的实例与静态方法等 Python 语言的核心语法,以及迭代器与可迭代对象、闭包、装饰器、@property、深拷贝与浅拷贝等高级语言特征,还介绍了错误与异常、调试。

在核心语法部分采用来自数据结构、游戏编程、信息管理、机器学习、强化学习等其他学科和领域的一些经典问题作为实战演练,展示了 Python 解决实际问题的强大功能,以提高初学者的实际编程能力,使其尽快熟悉语法的使用。下篇为 Python 标准库,对常用的一些 Python 标准库,如操作系统接口模块、时间日期模块,以及正则表达式、并发计算、图形用户接口编程、网络套接字编程、Internet 应用编程、数据持久化等进行了介绍。

本书描述精练、通俗易懂,提供了丰富的实战案例,既可作为大学本科和高职高专相关专业课程的教材,也可供编程爱好者学习和参考。

目录
上篇 Python 语法与实践
第 1 章 Python 介绍
1.1 程序与编程语言
1.1.1 计算机是什么
1.1.2 计算机编程
1.1.3 编译器、解释器和 Python 语言
1.1.4 Python 程序开发步骤
1.2 Python 语言的主要特征
1.3 Python 开发环境及安装方式
1.3.1 安装 Python
1.3.2 Python 开发环境
1.4 Python 解释器
1.4.1 交互式解释执行模式
1.4.2 函数
1.4.3 运行脚本文件模式
1.4.4 语句和注释
1.5 数和字符的表示
1.5.1 数的表示
1.5.2 字符的表示
1.6 如何获得帮助
1.7 习题
第 2 章 Python 基本计算
2.1 值、类型、对象
2.1.1 值和类型
2.1.2 对象
2.2 变量
2.2.1 什么是变量
2.2.2 变量名和关键字
2.2.3 动态类型语言
2.3 数据类型概述
2.3.1 数值类型
2.3.2 列表
2.3.3 元组
2.3.4 字符串
2.3.5 集合
2.3.6 字典
2.4 类型转换和输入
2.4.1 隐式类型转换
2.4.2 显式类型转换
2.4.3 输入
2.5 运算符和表达式
2.5.1 运算符和表达式的应用方法
2.5.2 运算符的种类
2.5.3 运算符的优先级
2.6 可变对象和不可变对象
2.7 控制语句
2.7.1 if 条件语句
2.7.2 循环语句
2.7.3 pass 语句
2.8 实战
2.8.1 二分查找
2.8.2 冒泡排序和简单选择排序
2.8.3 Floyd 最短路径算法
2.9 习题
第 3 章 函数
3.1 定义函数、调用函数、参数传递
3.1.1 定义函数和调用函数
3.1.2 参数传递
3.1.3 return 语句
3.1.4 文档字符串
3.2 全局变量和局部变量
3.2.1 全局变量
3.2.2 局部变量
3.3 函数的参数
3.3.1 默认形参
3.3.2 位置实参和关键字实参
3.3.3 任意形参(可变形参)
3.3.4 字典形参
3.3.5 解封参数列表
3.4 递归函数(调用自身的函数)
3.4.1 递归函数的使用方法
3.4.2 实战:二分查找的递归实现
3.4.3 实战:汉诺塔问题
3.4.4 实战:快速排序算法
3.4.5 实战:迷宫问题
3.5 函数对象和 lambda 表达式
3.5.1 函数对象
3.5.2 lambda 表达式
3.6 模块和包
3.6.1 模块
3.6.2 sys 模块(Python 解释器接口)
3.6.3 伪随机数发生器模块
3.6.4 包
3.6.5 Matplotlib 包
3.7 实战:Pong 游戏
3.7.1 Pygame 游戏库介绍
3.7.2 用 Pygame 编写游戏
3.7.3 Pong 游戏
3.8 实战:线性回归
3.8.1 机器学习
3.8.2 假设函数、回归和分类
3.8.3 线性回归
3.8.4 多变量函数的最小值、正规方程
3.8.5 梯度下降法
3.8.6 梯度下降法求解线性回归问题:模拟数据
3.8.7 批梯度下降法
3.8.8 房屋价格预测
3.8.9 样本特征的规范化
3.8.10 利用预测模型预测房屋价格
3.9 习题
第 4 章 内置数据类型
4.1 数值
4.1.1 int、float、complex、bool
4.1.2 类型转换
4.1.3 浮点数的精度问题
4.1.4 数值计算的函数
4.1.5 数学模块
4.2 列表
4.2.1 列表的定义
4.2.2 访问 list 的元素(索引和切片)
4.2.3 包含和遍历
4.2.4 list 的算术运算
4.2.5 Python 的内置函数对 list 进行操作
4.2.6 list 的方法
4.2.7 列表解析式
4.2.8 list 包含的不是对象本身而是对象的引用
4.3 字符串
4.3.1 定义字符串
4.3.2 转义字符
4.3.3 索引
4.3.4 切片
4.3.5 字符串不可修改
4.3.6 包含和遍历
4.3.7 内置函数对字符串操作
4.3.8 字符串的方法
4.4 元组
4.4.1 创建 tuple 对象
4.4.2 索引和切片
4.4.3 tuple 是不可变的
4.4.4 用内置函数对 tuple 操作
4.4.5 tuple 的方法
4.5 集合
4.5.1 创建 set 对象
4.5.2 遍历 set
4.5.3 用内置函数对 set 操作
4.5.4 set 的方法
4.5.5 set 的运算符操作
4.5.6 set 的集合运算(并、交、对称差)
4.6 字典
4.6.1 创建字典对象
4.6.2 获取键的值
4.6.3 通过下标插入或更新一个键值
4.6.4 插入或更新多个键值:update() 方法
4.6.5 删除键值
4.6.6 获取所有键、所有值、所有键值
4.6.7 遍历所有键、所有值、所有键值
4.6.8 用内置函数访问 dict 对象
4.6.9 从两个可迭代对象创建一个 dict
4.6.10 用 in 检测 dict 对象是否包含某个键
4.7 用强化学习 Q-Learning 算法求解最佳路径
4.7.1 强化学习
4.7.2 Q-Learning 算法
4.7.3 Q-Learning 算法的 Python 实现
4.8 习题
第 5 章 面向对象编程
5.1 什么是面向对象编程
5.1.1 过程式编程和面向对象编程
5.1.2 Python 既支持面向对象编程,也支持过程式编程
5.1.3 打印员工信息
5.2 类和对象
5.2.1 定义类
5.2.2 实例属性和构造函数
5.2.3 实例方法
5.2.4 类属性
5.2.5 del
5.2.6 访问控制和私有属性
5.2.7 运算符重载
5.3 派生类
5.3.1 派生类
5.3.2 覆盖
5.3.3 多继承
5.3.4 属性解析
5.4 绑定属性
5.4.1 动态绑定:给类和对象任意绑定属性
5.4.2 对象的__dict__属性
5.4.3 __slots__
5.5 实战:二叉搜索树
5.5.1 树、二叉树、二叉搜索树
5.5.2 树和二叉树的存储表示
5.5.3 二叉树的操作
5.5.4 二叉搜索树的操作
5.6 实战:面向对象游戏引擎和仿“雷电战机”游戏
5.6.1 面向对象游戏引擎
5.6.2 Pong 游戏
5.6.3 仿“雷电战机”游戏
5.7 习题
第 6 章 输入/输出
6.1 标准输入/输出
6.1.1 标准输出函数 print()
6.1.2 格式化输出
6.1.3 美观输出函数 pprint()
6.1.4 标准输入(内置函数 input())
6.2 文件读/写
6.2.1 内置函数 open()
6.2.2 文件对象的方法
6.2.3 二进制文件读/写
6.2.4 tell() 方法和 seek() 方法
6.3 习题
第 7 章 错误和异常
7.1 错误
7.1.1 语法错误
7.1.2 运行时错误:异常
7.1.3 逻辑错误
7.2 异常处理
7.2.1 捕捉异常的基本形式
7.2.2 捕获特定类型的异常
7.2.3 捕获未知的内置异常
7.2.4 else 子句
7.2.5 finally 子句
7.2.6 用 raise 抛出异常
7.2.7 自定义异常类
7.2.8 预定义清理行为
7.3 调试程序
7.3.1 输出(打印)
7.3.2 断言
7.3.3 日志
7.3.4 调试工具
7.4 习题
第 8 章 高级语法特性
8.1 容器、可迭代对象、迭代器、生成器
8.1.1 容器
8.1.2 可迭代的和迭代器
8.1.3 生成器
8.1.4 例子:读取多个文件
8.1.5 标准库的迭代器工具
8.2 闭包
8.2.1 作用域
8.2.2 嵌套函数
8.2.3 什么是闭包
8.2.4 用闭包代替类
8.2.5 函数的闭包属性__closure__
8.3 装饰器
8.4 @property
8.5 类的静态方法和类方法
8.5.1 静态方法
8.5.2 类方法
8.6 浅拷贝、深拷贝
8.6.1 浅拷贝
8.6.2 深拷贝
8.7 习题
下篇 Python 标准库
第 9 章 标准库的常用模块
9.1 操作系统接口模块
9.1.1 os 模块
9.1.2 高层文件操作
9.1.3 glob 模块
9.2 时间和日期模块
9.2.1 时间模块
9.2.2 日期模块
9.3 习题
第 10 章 正则表达式
10.1 正则表达式的定义
10.2 re 模块
10.2.1 re 模块的常用函数
10.2.2 编译模式串
10.2.3 从头匹配
10.2.4 多个匹配
10.2.5 按匹配切分
10.2.6 替换匹配
10.3 正则表达式中的语法规则
10.3.1 字符集
10.3.2 反斜杠
10.3.3 量词(重复)
10.3.4 边界字符(锚点)
10.3.5 或运算
10.3.6 分组
10.4 match 和 flags
10.4.1 match 对象及其应用
10.4.2 标志参数
10.5 习题
第 11 章 并发计算
11.1 多线程
11.1.1 Thread 类
11.1.2 线程同步
11.2 多进程
11.2.1 创建进程
11.2.2 从 Process 类派生自己的进程类
11.2.3 为进程命名
第 12 章 图形用户接口(GUI) 编程
12.1 Tkinter 基础
12.1.1 事件驱动编程
12.1.2 第一个 GUI 程序
12.1.3 Tkinter 部件
12.1.4 布局——几何管理
12.1.5 属性
12.1.6 自定义事件处理函数
12.1.7 定制事件处理函数
12.1.8 文本输入框
12.1.9 获取焦点
12.1.10 聊天对话框
12.1.11 框架
12.2 用类封装 GUI
12.2.1 菜单
12.2.2 工具条
12.2.3 画图
12.2.4 用鼠标画图
第 13 章 网络套接字编程
13.1 套接字编程概述
13.1.1 创建一个 socket 对象
13.1.2 服务器:绑定地址
13.1.3 面向连接的监听
13.1.4 发送和接收数据
13.2 TCP 服务器程序和客户程序
13.2.1 最简单的 TCP 服务器程序和客户程序
13.2.2 TCP 服务器程序和客户程序(多连接)
13.2.3 TCP 服务器程序和客户程序(数据分块)
13.2.4 TCP 服务器程序(多进程)
13.2.5 TCP 服务器程序(多线程)
13.3 UDP 服务器程序和客户程序
13.3.1 UDP 服务器程序
13.3.2 UDP 客户程序
13.4 socketserver
13.4.1 socketserver 模块
13.4.2 socketserver.TCPServer
13.4.3 socketserver.UDPServer
第 14 章 Internet 应用编程
14.1 urllib 模块
14.1.1 Get 请求
14.1.2 Post 请求
14.1.3 Request 对象
14.1.4 代理服务器
14.1.5 登录验证
14.1.6 网络爬虫
14.2 email
14.2.1 smtplib 模块
14.2.2 收取和处理邮件
第 15 章 数据持久化
15.1 pickle 模块
15.2 shelve 模块
15.3 dbm 模块
15.4 json 模块
15.4.1 简单数据类型的编码和解码
15.4.2 自定义类型的编码和解码
15.4.3 编码类和解码类
15.4.4 流或文件
15.5 sqlite3 模块
15.5.1 数据库基本操作
15.5.2 在查询中使用变量
15.5.3 事务
参考文献

下载地址:https://www.wenjiangs.com/wp-content/uploads/2024/01/DW7VIDL9MVnobyVn.zip

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

围归者

暂无简介

0 文章
0 评论
25 人气
更多

推荐作者

巷子口的你

文章 0 评论 0

微信用户

文章 0 评论 0

神妖

文章 0 评论 0

7460852697

文章 0 评论 0

ligengkai

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文