关于我们
书单推荐
新书推荐
|
Python开发实例大全 上卷
本书内容齐全,通过实例循序渐进地讲解了开发Python应用程序的知识。本书主要内容包括:搭建开发环境、基础语法、标准库函数、进程通信和联网操作、结构化标记处理、数据持久化操作、特殊文本格式处理、图形化界面开发等知识。
本书既适合零基础的Python读者或已经了解了Python语言基础语法的读者阅读,也适合希望进一步提高自己Python开发水平的读者阅读,还可作为程序员的参考书。
1.通过实例循序渐进地讲解Python应用程序开发技术,易于阅读。
2.实例涵盖了常用的Python应用领域,帮助读者快速掌握Python的强大功能。
3.贴心提示和注意事项提醒,帮助读者理解相关知识点及概念,更快地掌握Python的应用技巧。
4.提供QQ群答疑服务,可以随时与作者互动,辅助读者顺利学习Python开发。
5.是学习Python开发的实用教程,适合Python开发初学者、软件工程师、测试和自动化框架开发人员。
王翠萍 云机器学习小组研发工程师,软件大数据实验室数据挖掘专家。精通C语言、Java、C++、PHP、Python等开发语言,现在负责云计算的研发和架构工作。从2014年起便开始研究机器学习课题,是国内最早从事相关研究的专家之一。
第 1章 搭建开发环境实战 1
1.1 安装Python环境 2
实例01-01:在Windows操作系统中下载并安装Python 2
实例01-02:在macOS操作系统中下载并安装Python 3
实例01-03:在Linux操作系统中下载并安装Python 4
1.2 安装开发工具 4
实例01-04:使用Python自带工具IDLE 4
实例01-05:安装PyCharm 5
实例01-06:安装Eclipse 8
1.3 编写并运行Python程序 12
实例01-07:使用IDLE编写并运行Python程序 12
实例01-08:使用命令行运行Python程序 12
实例01-09:交互式运行Python程序 13
实例01-10:使用PyCharm编写并运行Python程序 13
实例01-11:使用Eclipse编写并运行Python程序 16
第 2章 基础语法实战 20
2.1 使用列表 21
实例02-01:创建数字列表 21
实例02-02:访问列表中的值 21
实例02-03:删除列表中的重复元素并保持顺序不变 22
实例02-04:找出列表中出现次数最多的元素 23
实例02-05:对类的实例进行排序 23
实例02-06:使用列表推导式 24
实例02-07:命名切片操作 25
2.2 使用元组 26
实例02-08:创建并访问元组 26
实例02-09:修改元组的值 26
实例02-10:删除元组 27
实例02-11:使用内置方法操作元组 27
实例02-12:将序列分解为单独的变量 28
实例02-13:将序列的最后几项作为历史记录 29
实例02-14:实现优先级队列 29
2.3 使用字典 31
实例02-15:创建并访问字典 31
实例02-16:向字典中添加数据 32
实例02-17:修改字典中的数据 32
实例02-18:删除字典中的元素 32
实例02-19:创建一键多值字典 33
实例02-20:使用OrderedDict类创建和修改有序字典 34
实例02-21:获取字典中的最大值和最小值 35
实例02-22:获取两个字典中的相同键值对 35
实例02-23:使用函数itemgetter()对字典进行排序 36
实例02-24:使用字典推导式 37
实例02-25:根据字段进行分组 38
实例02-26:转换并换算数据 39
实例02-27:将多个映射合并为单个映射 40
2.4 变量 41
实例02-28:实现变量赋值 41
实例02-29:使用局部变量 42
实例02-30:使用全局变量 42
实例02-31:体验关键字global的作用 43
实例02-32:定义常量功能类_const 44
2.5 条件语句和循环流程控制 45
实例02-33:使用条件语句判断年龄 45
实例02-34:使用for循环遍历单词“Python”中的各个字母 46
实例02-35:使用range()循环输出列表中的元素 47
实例02-36:循环输出10~20的各数是否是质数 47
实例02-37:获取两个整数之间的所有素数 48
实例02-38:输出九九乘法表 48
实例02-39:使用while循环输出整数0~4 49
实例02-40:while循环的死循环问题 49
实例02-41:输出10以内的所有素数 50
实例02-42:在for循环和while循环中使用break语句 50
实例02-43:在for循环和while循环中使用continue语句 51
实例02-44:输出指定英文单词中的每个英文字母 52
2.6 函数 52
实例02-45:使用函数计算序列内元素的和 52
实例02-46:创建一个可以接受任意数量参数的函数 53
实例02-47:减少函数的参数 54
实例02-48:家政公司的打扫服务 54
2.7 类和对象 55
实例02-49:创建并使用类和对象 55
实例02-50:定义并使用类方法 56
实例02-51:我的宠物狗 56
实例02-52:使用属性函数创建可以扩展功能的属性 57
实例02-53:使用Python描述符实现延迟初始化 59
实例02-54:在宝马汽车中使用继承 60
实例02-55:在子类中扩展属性 61
实例02-56:模仿Linux操作系统中的文件读写接口 62
2.8 迭代器和生成器 63
实例02-57:创建并使用迭代器 63
实例02-58:创建并使用生成器 64
实例02-59:实现委托迭代处理 64
实例02-60:使用生成器创建新迭代模式 65
实例02-61:使用生成器函数实现一个迭代协议 66
实例02-62:使用函数reversed()实现反转迭代 67
实例02-63:实现有额外状态的生成器函数 68
实例02-64:实现迭代器切片处理 69
实例02-65:迭代出所有可能的组合 69
实例02-66:使用函数enumerate()创建索引迭代序列 70
实例02-67:使用函数zip()或zip_longest()迭代多个序列 71
第3章 标准库函数实战 72
3.1 字符串处理函数 73
实例03-01:使用函数split()分割指定的字符串 73
实例03-02:使用函数re.split()分割指定字符串 73
实例03-03:字符串开头和结尾处理 73
实例03-04:实现字符串匹配处理 74
实例03-05:文本模式匹配和查找 75
实例03-06:文本查找和替换 76
实例03-07:实现最短文本匹配 78
实例03-08:处理Unicode字符串 78
实例03-09:删除字符串中的字符 79
实例03-10:字符过滤和清理 80
实例03-11:字符串对齐处理 81
实例03-12:字符串连接 81
实例03-13:重新格式化字符串 83
实例03-14:在字符串中处理HTML和XML标记 84
实例03-15:在字节串中实现基本文本处理 84
3.2 文件和I/O处理函数 85
实例03-16:刷新缓冲区 85
实例03-17:检测文件是否连接到一个终端设备 86
实例03-18:返回文件各行内容 86
实例03-19:返回文件3个字节的内容 87
实例03-20:返回文件中所有行 87
实例03-21:重复读取文件中的第 1行内容 88
实例03-22:获取当前文件位置 88
实例03-23:截取文件中前3个字符 88
实例03-24:向文件中写入多行字符串 89
实例03-25:获取文件操作权限 89
实例03-26:修改当前工作目录到指定路径 90
实例03-27:修改文件或目录权限 90
实例03-28:遍历显示某个目录中所有文件夹和文件列表 90
实例03-29:修改一个目录名字 91
实例03-30:读取两个文本文件内容 91
实例03-31:字符串I/O 操作 92
实例03-32:读写压缩文件 92
实例03-33:对二进制文件做内存映射 93
实例03-34:检测某个文件或目录是否存在 94
实例03-35:获取某个目录中的文件列表信息 94
实例03-36:获取目录的详细信息 95
实例03-37:绕过文件名编码设置编码格式 95
实例03-38:创建并读取临时文件信息 96
实例03-39:实现数据序列化 97
3.3 数字处理函数 98
实例03-40:使用函数abs()返回绝对值 98
实例03-41:返回最小整数 98
实例03-42:返回参数指数值 99
实例03-43:返回参数的绝对值 99
实例03-44:返回指定数字的下舍整数 99
实例03-45:计算指定数字自然对数 99
实例03-46:计算指定数字以10为基数的对数 100
实例03-47:获取参数最大值 100
实例03-48:获取参数最小值 100
实例03-49:获取参数的整数部分和小数部分 101
实例03-50:计算x的y次方的结果 101
实例03-51:计算指定数字的四舍五入值 101
实例03-52:使用格式化方式设置数字精度 102
实例03-53:计算指定数字的平方根 102
实例03-54:分别实现无穷大数和NaN验证处理 102
实例03-55:实现误差运算和精确运算 103
实例03-56:将整数转换为二进制、八进制或十六进制数据 104
实例03-57:实现复数运算 104
实例03-58:使用fractions模块处理分数 105
实例03-59:使用NumPy模块分别创建一维数组和二维数组 106
实例03-60:使用函数choice()创建随机数 106
3.4 日期和时间函数 106
实例03-61:使用函数time.clock()处理时间 106
实例03-62:使用函数time.tzset()操作时间 107
实例03-63:使用calendar模块函数操作日期 107
实例03-64:使用类date的实例方法和属性实现日期操作 109
实例03-65:使用类time实现日期操作 110
实例03-66:使用类datetime实现日期操作 110
实例03-67:使用类datetime格式化日期 110
实例03-68:使用类datetime实现时间换算 111
实例03-69:获取某一周中某一天的日期 112
实例03-70:输出当月每一天的日期 113
实例03-71:循环输出当月每一天的日期 113
实例03-72:将字符串转换为日期 114
第4章 进程通信和联网操作实战 115
4.1 使用Socket网络接口库 116
实例04-01:分别创建简单Socket服务器和客户端 116
实例04-02:使用Socket建立TCP“客户端/服务器”连接 116
实例04-03:TCP“客户端/服务器”模式的机器人聊天程序 117
实例04-04:实现一个文件上传系统 118
实例04-05:使用Socket建立UDP“客户端/服务器”连接 119
4.2 实现安全Socket编程 120
实例04-06:创建SSL Socket连接 120
实例04-07:实现客户端和服务器SSL安全交互 121
4.3 实现I/O多路复用 123
实例04-08:使用select同时监听多个端口 123
实例04-09:模拟多线程并实现读写分离 125
实例04-10:使用select实现一个可并发的服务器 126
实例04-11:实现一个可并发的服务器 126
实例04-12:实现高级I/O多路复用 127
4.4 实现异步I/O处理 128
实例04-13:使用asyncio实现Hello world代码 128
实例04-14:使用asyncio获取网站首页信息 129
实例04-15:以动画的方式显示文本式旋转指针 130
4.5 实现异步Socket处理 131
实例04-16:使用模块asyncore实现一个基本的HTTP客户端 131
实例04-17:使用模块asyncore响应客户端发送数据 132
4.6 实现内存映射 133
实例04-18:读取文件test.txt的内容 133
实例04-19:读取整个文件test.txt的内容 134
实例04-20:逐步读取文件test.txt中的指定字节数内容 134
4.7 socketserver编程 135
实例04-21:使用socketserver创建TCP“客户端/服务器”程序 135
实例04-22:使用ThreadingTCPServer创建“客户端/服务器”通信程序 135
第5章 结构化标记处理实战 137
5.1 使用内置模块html 138
实例05-01:使用html.parser创建HTML解析器 138
实例05-02:使用html.entities解析HTML 139
5.2 使用内置模块解析XML 140
实例05-03:使用模块xml.etree.ElementTree读取XML文件 140
实例05-04:使用SAX方法解析XML文件 141
实例05-05:使用DOM解析XML文件 143
实例05-06:使用DOM获取XML文件中指定元素 144
实例05-07:使用模块xml.sax.saxutils创建一个指定元素的XML文件 146
实例05-08:使用模块xml.parsers.expat解析XML文件 148
5.3 使用第三方库解析HTML和XML 149
实例05-09:使用库Beautiful Soup解析HTML代码 149
实例05-10:使用库Beautiful Soup解析指定HTML标签 150
实例05-11:将p标签下的所有子标签存入一个列表中 150
实例05-12:获取p标签下的所有子节点内容 151
实例05-13:处理标签中的兄弟节点和父节点 151
实例05-14:根据标签名查找文件 152
实例05-15:使用函数find_all()根据属性查找文件 153
实例05-16:用函数find_all()根据text查找文件 153
实例05-17:使用其他标准选择器 153
实例05-18:使用select()直接传入CSS选择器 154
实例05-19:使用库bleach过滤HTML代码 155
实例05-20:使用方法bleach.clean()不同参数实现过滤处理 155
实例05-21:使用方法bleach.linkify()添加指定属性 156
实例05-22:使用callback参数删除指定属性 157
实例05-23:使用bleach.linkifier.Linker处理链接 157
实例05-24:使用bleach.linkifier.LinkifyFilter处理链接 158
实例05-25:使用库cssutils处理CSS标记 158
实例05-26:使用html5lib解析HTML代码 159
实例05-27:使用html5lib解析HTML中的指定标签 159
实例05-28:使用库MarkupSafe构建安全HTML 160
实例05-29:使用库MarkupSafe实现格式化 161
实例05-30:使用库pyquery实现字符串初始化 161
实例05-31:使用pyquery解析HTML内容 162
实例05-32:使用库pyquery解析本地HTML文件和网络页面 163
实例05-33:使用库pyquery实现基于CSS选择器查找 163
实例05-34:使用库pyquery查找子节点 164
实例05-35:使用库pyquery查找父节点 165
实例05-36:使用库pyquery获取兄弟节点信息 165
第6章 应用程序开发实战 167
6.1 使用webbrowser实现浏览器操作 168
实例06-01:分别调用IE和谷歌浏览器打开百度网主页 168
实例06-02:调用默认浏览器每隔5s打开一次指定网页 168
6.2 使用urllib包 168
实例06-03:在百度搜索关键词中得到第 一页链接 168
实例06-04:使用urllib实现HTTP身份验证 169
6.3 使用内置模块http 170
实例06-05:访问指定的网站 170
实例06-06:使用http.client模块中GET方式获取数据 171
实例06-07:综合使用模块http和urllib 171
实例06-08:发送HTTP GET请求到远端服务器 172
实例06-09:使用POST方法在请求主体中发送查询参数 172
实例06-10:在发出的请求中提供自定义的HTTP头 173
6.4 FTP传输、SMTP服务器和XML-RPC服务器 173
实例06-11:创建一个FTP文件传输客户端 174
实例06-12:使用模块smtpd创建一个SMTP服务器 175
实例06-13:使用模块xmlrpc.server实现XML-RPC客户端和服务器相互通信 175
6.5 开发电子邮件系统 176
实例06-14:获取指定电子邮箱中最新两封电子邮件的主题和发件人 176
实例06-15:向指定电子邮箱发送电子邮件 177
实例06-16:发送带附件功能的电子邮件 178
实例06-17:使用库envelopes向指定电子邮箱发送电子邮件 179
实例06-18:使用库envelopes构建Flask Web电子邮件发送程序 179
实例06-19:创建一个带有HTTP REST接口的SMTP服务器 180
6.6 解析JSON数据 180
实例06-20:将Python字典转换为JSON对象 180
实例06-21:将JSON编码的字符串转换为Python数据结构 181
实例06-22:编写自定义类解析JSON数据 181
6.7 实现数据编码和解码 185
实例06-23:实现数据“编码/解码”操作 185
实例06-24:实现bytes类型和base64类型的相互转换 186
实例06-25:生成由某地址可表示的全部IP地址的范围 187
6.8 实现身份验证 188
实例06-26:获取指定字符串的数据指纹 188
实例06-27:利用hmac模块实现简单且高效的身份验证 188
实例06-28:Socket服务器和客户端的加密认证 189
6.9 使用第三方库处理HTTP 190
实例06-29:使用库aiohttp实现异步处理 190
实例06-30:使用库aiohttp爬取指定CSDN博客中技术文章地址 191
实例06-31:使用库requests返回指定URL请求 192
实例06-32:提交的数据是向指定地址传送的data里面的数据 192
实例06-33:使用GET和POST方式处理JSON数据 193
实例06-34:添加headers获取知乎页面信息 193
实例06-35:使用自定义的编码格式进行解码 194
实例06-36:访问远程页面信息 194
实例06-37:使用库grequests同时处理一组请求 195
实例06-38:使用库grequests提升访问请求性能 195
实例06-39:使用库httplib2获取网页数据 196
实例06-40:使用库httplib2处理网页缓存数据 196
实例06-41:使用POST发送构造数据 197
实例06-42:使用库urllib3中的request()方法创建请求 198
实例06-43:在request()方法中添加head头创建请求 198
实例06-44:使用库urllib3中的post()方法创建请求 198
实例06-45:使用库urllib3发送JSON数据 199
6.10 使用第三方库处理URL 200
实例06-46:使用库furl优雅地处理URL分页 200
实例06-47:使用库furl处理URL参数 200
实例06-48:使用内联方法处理URL参数 201
实例06-49:使用库purl处理3种构造类型URL 201
实例06-50:使用库purl返回各个URL对象 201
实例06-51:使用库purl修改URL参数值 202
实例06-52:在当前路径末尾添加字段 202
实例06-53:使用库webargs处理URL参数 203
实例06-54:在aiohttp程序中使用库webargs 203
实例06-55:在Tornado程序中使用库webargs 204
第7章 数据持久化操作实战 205
7.1 操作SQLite3数据库 206
实例07-01:使用方法cursor.execute()执行指定SQL语句 206
实例07-02:使用方法cursor.executemany()执行指定的SQL命令 206
实例07-03:同时执行多个SQL语句 207
实例07-04:使用方法create_function()执行指定函数 207
实例07-05:创建用户定义的聚合函数 207
实例07-06:用自定义排序规则以“错误方式”进行排序 208
实例07-07:生成一个 SQLite Shell 209
实例07-08:返回数据库中的列名称列表 209
实例07-09:操作SQLite3数据库 210
实例07-10:将自定义类Point适配SQLite3数据库 211
实例07-11:使用函数register_adapter()注册适配器函数 212
实例07-12:将datetime.datetime对象保存为UNIX时间戳 212
实例07-13:将自定义Python类型转换成SQLite类型 212
实例07-14:使用默认适配器和转换器 213
实例07-15:使用isolation_level开启智能commit 214
实例07-16:手动开始commit(提交执行)操作 215
实例07-17:使用模块apsw创建并操作SQLite数据库数据 215
实例07-18:同时批处理上千条数据 215
7.2 操作MySQL数据库 217
实例07-19:显示PyMySQL数据库版本号 217
实例07-20:创建新表 218
实例07-21:向数据库中插入数据 218
实例07-22:查询数据库中的数据 219
实例07-23:更新数据库中的数据 220
实例07-24:删除数据库中的数据 220
实例07-25:通过执行事务删除表中的数据 221
实例07-26:足球俱乐部球员管理系统 221
7.3 使用MariaDB数据库 224
实例07-27:搭建MariaDB数据库环境 224
实例07-28:在Python程序中使用MariaDB数据库 226
实例07-29:使用MariaDB创建MySQL数据库 228
7.4 使用MongoDB数据库 229
实例07-30:搭建MongoDB环境 229
实例07-31:使用PyMongo操作MongoDB数据库 230
实例07-32:使用mongoengine操作MongoDB数据库 232
7.5 使用ORM操作数据库 234
实例07-33:使用SQLAlchemy操作两种数据库 234
实例07-34:使用Peewee操作SQLite数据库 237
实例07-35:更新和删除指定数据库中数据 238
实例07-36:查询数据库中指定范围内的数据 238
实例07-37:使用Peewee在MySQL数据库中创建两个表 240
实例07-38:使用Pony创建一个SQLite数据库 241
实例07-39:使用Pony向数据库的指定表中添加新数据 242
实例07-40:使用Pony查询并修改数据库中指定数据 244
实例07-41:使用Pony删除数据库的表中的某条数据 245
实例07-42:在指定MySQL数据库中创建指定的表 245
实例07-43:在MySQL数据库中实现一对多和继承操作 246
实例07-44:下载并安装PostgreSQL 248
实例07-45:连接指定PostgreSQL数据库 248
实例07-46:在PostgreSQL数据库中创建指定表 249
实例07-47:创建PostgreSQL表并插入新数据 249
实例07-48:查询显示指定表中的数据 250
实例07-49:向PostgreSQL数据库中插入新数据并更新数据 251
实例07-50:删除PostgreSQL数据库中的指定数据 252
实例07-51:创建PostgreSQL表并实现插入、查询、更新和删除数据 253
实例07-52:使用模块queries查询PostgreSQL数据库中的数据 254
实例07-53:查询并显示PostgreSQL数据库中的数据 254
7.6 连接SQL Server数据库 255
实例07-54:连接并操作SQL Server数据库 255
实例07-55:创建SQL Server表并查询其数据 256
7.7 使用Redis存储 257
实例07-56:使用Redis连接服务器 257
实例07-57:使用ConnectionPool创建连接池 257
实例07-58:实现“发布-订阅”模式 258
实例07-59:在Redis中使用delete命令和exists命令 258
实例07-60:使用expire命令和expireat命令 259
实例07-61:使用persist命令、keys命令和move命令 259
第8章 特殊文本格式处理实战 261
8.1 Tablib模块实战演练 262
实例08-01:操作数据集中的指定行和列 262
实例08-02:删除指定数据并导出不同文本格式的数据 262
实例08-03:将Tablib数据集导出到新建Excel文件 263
实例08-04:将多个Tablib数据集导出到Excel文件 264
实例08-05:使用标签过滤Tablib数据集 266
实例08-06:将两组数据分离导入Excel文件 266
8.2 Office处理实战 267
实例08-07:使用openpyxl读取Excel文件 267
实例08-08:将4组数据导入Excel文件中 267
实例08-09:在Excel文件中检索某关键字 268
实例08-10:将数据导入Excel文件并生成图表 269
实例08-11:使用pyexcel读取并写入CSV文件 270
实例08-12:使用pyexcel读取Excel文件中的每个单元格内容 271
实例08-13:按列读取并显示Excel文件中的每个单元格内容 271
实例08-14:读取并显示Excel文件中的所有数据 272
实例08-15:将3组数据导入新建的Excel文件中 272
实例08-16:使用pyexcel以多种方式获取Excel数据 273
实例08-17:将数据分别导入Excel文件和SQLite数据库 274
实例08-18:使用python-docx创建Word文档 274
实例08-19:在Word文档中插入20个实心图形 275
实例08-20:向Word文档中添加指定段落样式的内容 276
实例08-21:得到英文的样式名称 277
实例08-22:获取Word文档中的文本样式名称 278
实例08-23:获取Word文档中的文本内容 278
实例08-24:在Word文档中创建表格 278
实例08-25:创建表格并合并其中的单元格 279
实例08-26:调整Word表格宽度 280
实例08-27:获取python-docx内部的表格样式名称 280
实例08-28:使用指定样式修饰表格 281
实例08-29:创建样式和设置字体 281
实例08-30:使用Run.font设置字体样式 282
实例08-31:设置段落递进的左对齐样式 282
实例08-32:自定义创建Word样式 283
实例08-33:使用库xlrd读取Excel文件的内容 284
实例08-34:将指定内容写入Excel文件并创建Excel文件 285
实例08-35:使用库xlsxwriter创建一个指定内容的Excel文件 285
实例08-36:向Excel文件中批量写入内容 286
实例08-37:设置表格样式 286
实例08-38:向Excel文件中插入图像 288
实例08-39:向Excel文件中插入数据并绘制柱状图 289
实例08-40:向Excel文件中插入数据并绘制散点图 290
实例08-41:向Excel文件中插入数据并绘制柱状图和饼图 291
8.3 PDF处理实战 293
实例08-42:将PDF文件中的内容转换为TXT文本 293
实例08-43:解析某个在线PDF文件的内容 295
实例08-44:使用PyPDF2读取PDF文件 297
实例08-45:使用PyPDF2将PDF文件中写入另一个PDF文件内容 298
实例08-46:将两个PDF文件合并为一个PDF文件 298
实例08-47:分割某个指定PDF文件 299
实例08-48:合并3个PDF文件 299
实例08-49:向指定PDF文件中写入文本 300
实例08-50:向PDF文件中写入指定样式的文本 300
实例08-51:在PDF文件中绘制矢量图形 301
实例08-52:在PDF文件中绘制图像 301
实例08-53:分别在PDF文件和PNG文件中绘制饼图 302
实例08-54:在PDF文件中分别生成条形图和二维码 303
第9章 图形化界面开发实战 305
9.1 使用内置库tkinter 306
实例09-01:创建第 一个GUI程序 306
实例09-02:向窗口中添加组件 306
实例09-03:使用Frame()布局窗体界面 307
实例09-04:向窗口中添加按钮控件 307
实例09-05:使用文本框控件 308
实例09-06:实现会员注册界面效果 309
实例09-07:使用菜单控件 310
实例09-08:在窗口中创建标签 310
实例09-09:在tkinter窗口中创建单选按钮和复选框 311
实例09-10:在窗口中绘制图形 312
实例09-11:使用事件机制创建一个“英尺/米”转换器 313
实例09-12:实现一个动态绘图程序 314
实例09-13:实现一个简单计算器程序 316
实例09-14:创建消息对话框 317
实例09-15:创建输入对话框 318
实例09-16:创建打开/保存文件对话框 319
实例09-17:创建选择颜色对话框 319
实例09-18:创建自定义对话框 320
实例09-19:开发一个记事本程序 321
实例09-20:使用偏函数模拟实现交通标志 323
实例09-21:创建桌面天气预报程序 325
实例09-22:创建精简版资源管理器 326
9.2 使用tkinter的扩展小部件tkinter.tix 328
实例09-23:使用Balloon组件 328
实例09-24:使用DirList组件 329
实例09-25:使用分组列表组件 330
实例09-26:使用管理组件 332
实例09-27:实现一个日历程序 333
9.3 Pmw库开发实战 335
实例09-28:下载并安装Pmw 335
实例09-29:使用ButtonBox组件 336
实例09-30:使用ComboBox组件 337
实例09-31:使用Counter组件 339
实例09-32:使用Group组件 340
实例09-33:使用LabeledWidget组件 341
实例09-34:使用MainMenuBar组件 342
实例09-35:使用MessageBar组件 344
实例09-36:使用OptionMenu组件 345
实例09-37:使用RadioSelect组件 345
实例09-38:使用ScrolledCanvas组件 347
实例09-39:使用AboutDialog组件 348
实例09-40:使用Balloon组件 349
实例09-41:使用PyQt创建第 一个GUI程序 351
实例09-42:在PyQt窗体中创建一个图标 352
实例09-43:在PyQt窗体中实现一个提示信息 353
实例09-44:在PyQt窗体中创建状态栏信息 354
实例09-45:在PyQt窗体中同时创建菜单栏和状态栏信息 354
实例09-46:在PyQt窗体中创建工具栏 356
实例09-47:在PyQt窗体中使用绝对定位方式 356
实例09-48:使用箱布局 357
实例09-49:使用网格布局模拟实现一个计算器界面 358
实例09-50:使用表单布局实现一个留言板界面 359
实例09-51:使用单击按钮事件处理程序 359
实例09-52:在PyQt5中使用信号和槽 360
实例09-53:重新实现按键盘按键后的操作功能 361
实例09-54:重新实现按住方向键后的操作功能 361
实例09-55:实现人机对战“石头、剪刀、布”小游戏 362
实例09-56:发送自定义信号 363
实例09-57:使用对话框获取用户名信息 364
实例09-58:使用颜色选择对话框设置背景颜色 365
实例09-59:使用字体选择对话框设置字体 366
实例09-60:使用文件选择对话框选择一个文件 367
实例09-61:使用QCheckBox实现复选框功能 368
实例09-62:使用QRadioButton实现单选按钮功能 369
实例09-63:使用QPushButton实现切换按钮功能 370
实例09-64:使用QSlider实现一个音量控制器 371
实例09-65:使用QProgressBar实现一个进度条效果 372
实例09-66:使用QCalendarWidget实现一个日历 373
实例09-67:在窗口中显示一个图片 374
实例09-68:创建一个单行文本编辑框 375
实例09-69:创建两个分割框组件 376
实例09-70:使用Eric6提高开发效率 377
9.4 使用pyglet库 378
实例09-71:创建第 一个pyglet程序 378
实例09-72:在窗体中显示指定图片 378
实例09-73:使用库pyglet处理键盘事件程序 379
实例09-74:在屏幕上绘制一个三角形 379
实例09-75:使用顶点数组绘制三角形 380
实例09-76:开发一个Minecraft游戏 381
9.5 使用Toga库 385
实例09-77:使用Toga创建第 一个GUI程序 385
实例09-78:创建一个温度转换器 386
实例09-79:使用组件ScrollContainer实现滚动功能 387
实例09-80:使用绘图组件 388
9.6 wxPython实战 389
实例09-81:开发第 一个wxPython程序 389
实例09-82:使用StaticText组件在窗体中显示文本 389
实例09-83:创建4种不同样式的文本框 391
实例09-84:使用RadioButton组件 392
9.7 GUI高级实战 393
实例09-85:实现tkinter+ SQLite3图书馆系统 393
实例09-86:实现tkinter + SQLite3多线程计时器系统 395
你还可能感兴趣
我要评论
|