第1章 Python概述 1
1.1 Python语言概述 1
1.1.1 什么是Python语言 1
1.1.2 Python语言特点 2
1.2 Python开发环境的安装与配置 2
1.2.1 Python安装 3
1.2.2 环境变量配置 3
1.3 IDLE编程环境 4
1.3.1 通过交互模式进行编程 5
1.3.2 通过脚本模式进行编程 5
1.3.3 使用IDLE的调试器 6
1.4 PyCharm编程环境 7
习题 10
第2章 Python程序设计基础 12
2.1 Python基本语法 12
2.1.1 标识符 12
2.1.2 程序注释 12
2.1.3 代码块和组 13
2.1.4 基本输出语句 14
2.2 变量和数字类型 14
2.2.1 变量 14
2.2.2 数据类型 15
2.2.3 数字类型转换 15
2.3 使用解释器 16
2.3.1 交互式编程 16
2.3.2 脚本式编程 16
2.4 运算符和优先级 17
2.4.1 运算符 17
2.4.2 优先级 21
2.5 条件控制语句 21
2.5.1 if语句 22
2.5.2 if嵌套 23
2.6 循环语句 24
2.6.1 while语句 24
2.6.2 for语句 26
2.6.3 break和continue语句 28
2.7 迭代器和生成器 31
2.7.1 迭代器 31
2.7.2 生成器 32
习题 32
第3章 序列数据结构 34
3.1 字符串 34
3.1.1 字符串查询 34
3.1.2 字符串更新 35
3.1.3 转义字符 35
3.1.4 字符串运算符 36
3.1.5 字符串格式化 38
3.2 列表 38
3.2.1 列表赋值 39
3.2.2 列表查询 39
3.2.3 列表更新 39
3.2.4 列表元素删除 40
3.2.5 列表操作符 41
3.2.6 列表嵌套 42
3.3 元组 42
3.3.1 元组查询 43
3.3.2 元组修改 43
3.3.3 删除元组 43
3.3.4 元组运算符 44
3.4 集合 45
3.4.1 集合创建 45
3.4.2 集合运算 45
3.5 字典 46
3.5.1 字典查询 47
3.5.2 字典修改 48
3.5.3 字典元素删除 48
3.5.4字典的特性 48
习题 49
第4章 函数和模块 51
4.1函数 51
4.1.1函数定义 51
4.1.2函数调用 52
4.2参数传递 54
4.2.1参数传递对象 54
4.2.2参数传递类型 55
4.3匿名函数 58
4.4返回值 58
4.5变量作用域 59
4.5.1作用域的范围 59
4.5.2全局变量和局部变量 59
4.5.3 global和nonlocal关键字 60
4.6模块 61
4.6.1模块定义 61
4.6.2模块导入 62
4.7标准模块 63
4.8时间模块 63
4.8.1时间戳 63
4.8.2获取当前时间 64
4.8.3获取格式化时间 64
4.8.4格式化日期 64
4.8.5获取某月日历 66
习题 66
第5章 输入输出和文件 68
5.1输入输出 68
5.1.1输出格式 68
5.1.2键盘输入 70
5.2文件操作 70
5.2.1 open()函数 70
5.2.2 close()函数 71
5.2.3文件对象属性 72
5.3文件对象操作 73
5.3.1 read()函数 73
5.3.2 write()函数 73
5.3.3 readline()函数 74
5.3.4 next()函数 74
5.3.5 seek()函数 75
5.3.6 tell()函数 76
习题 77
第6章 面向对象编程 78
6.1创建类 78
6.1.1类的定义 78
6.1.2类的实例化 78
6.1.3类的方法 79
6.1.4构造方法 80
6.1.5私有属性和方法 80
6.2继承 82
6.2.1继承的定义和特征 82
6.2.2单继承 83
6.2.3多继承 84
6.2.4方法重写 85
6.2.5运算符重载 86
习题 88
第7章 GUI编程 90
7.1 Tkinter模块功能 90
7.1.1创建一个GUI程序 90
7.1.2 Tkinter控件简介 91
7.2 Tkinter图形界面控件 92
7.2.1 Label控件 92
7.2.2 Button控件 93
7.2.3 Canvas控件 94
7.2.4 Checkbutton控件 95
7.2.5 Radiobutton控件 98
7.2.6 Entry控件 101
7.2.7 Combobox控件 102
7.2.8 ScrolledText控件 104
7.2.9 Menu控件 108
7.2.10 Frame控件 109
7.3事件响应 113
7.3.1鼠标事件 113
7.3.2键盘事件 115
习题 117
第8章 多线程编程 119
8.1进程和线程简介 119
8.1.1进程和线程的概念 119
8.1.2进程与线程之间的关系 119
8.2线程创建 120
8.2.1函数方法创建线程 120
8.2.2用threading模块创建线程 121
8.3线程同步 123
8.3.1线程锁 123
8.3.2 threading.RLock和threading.Lock的区别 126
8.3.3 BoundedSemaphore 126
8.3.4 event 128
8.3.5 conditions 130
8.3.6 barriers 132
8.4 Queue模块 133
8.4.1 FIFO队列 133
8.4.2 LIFO队列 133
习题 137
第9章 数据库编程 139
9.1数据库简介 139
9.1.1数据库系统管理 139
9.1.2关系型数据库 140
9.2 SQLite数据库应用 141
9.2.1关于SQLite数据库 141
9.2.2连接SQLite数据库 141
9.2.3创建表 142
9.2.4删除表 144
9.2.5向表中添加数据 144
9.2.6查找数据 145
9.2.7更新数据 146
9.2.8删除数据 148
9.3 MySQL数据库应用 149
9.3.1关于MySQL数据库 149
9.3.2安装MySQL数据库 149
9.3.3安装PyMySQL模块 151
9.3.4连接数据库 152
9.3.5创建表 152
9.3.6插入数据 153
9.3.7查询数据 154
9.3.8更新数据 155
9.3.9删除数据 156
习题 156
第10章 网络编程应用 158
10.1 Socket编程 158
10.1.1套接字模块 158
10.1.2编写一个简单的服务器 160
10.2邮件服务程序 161
10.2.1发送普通电子邮件 162
10.2.2发送HTML电子邮件 163
10.2.3发送带附件的电子邮件 164
10.2.4在HTML文本中添加图片 165
习题 166
第11章 Web开发 168
11.1 Web服务简介 168
11.1.1 HTTP协议 169
11.1.2 HTTP跟踪 170
11.1.3 HTTP格式 170
11.2超文本 171
11.2.1 HTML 171
11.2.2 CSS 172
11.2.3 JavaScript 174
11.3 WSGI接口 175
11.3.1 WSGI接口介绍 175
11.3.2运行WSGI服务 176
11.4 Web框架 178
11.4.1 Flask框架简介 178
11.4.2 Flask框架应用 178
11.5模板 181
11.5.1模板的功能 181
11.5.2 MVC框架 181
11.5.3 MVC应用 182
习题 184
参考文献 185