- ISBN:9787115528575
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:400
- 出版时间:2023-05-01
- 条形码:9787115528575 ; 978-7-115-52857-5
本书特色
适读人群 :程序员 大专院校的师生和培训学校1.内容丰富,范例众多本书的范例几乎覆盖了主流的Python应用领域,通过讲解众多的实例,帮助读者有效地学习和使用Python的强大功能,并逐步步入Python开发高手之列。2.贴心提示和注意事项提醒本书根据需要安排了“注意”等小板块,帮助读者理解相关知识点及概念,更快地掌握Python的应用技巧。3.通过提供答疑服务读者阅读本书时,无论遇到任何问题,都可以通过QQ群随时与笔者互动。
内容简介
本书内容齐全,通过范例循序渐进地讲解了开发Python应用程序的知识。本书主要内容包括:Python图形图像开发、多线程开发、Python游戏开发、数据可视化、Flask Web开发、Django Web开发、Python算法等知识。 本书既适合零基础的人员学习,也适合已经了解了Python基础语法的、希望进一步提高Python开发水平的读者阅读,还可作为程序员的参考书。
目录
第 10章 图形图像开发实战 1
10.1 使用Pillow库 2
范例10-01:安装Pillow库 2
范例10-02:使用Image模块创建随机大小图片 2
范例10-03:使用Image模块打开一幅图片 3
范例10-04:实现图片透明度混合 3
范例10-05:实现图片遮罩混合处理 4
范例10-06:缩放指定图片 5
范例10-07:使用Image模块缩放指定图片 5
范例10-08:对指定图片实现剪切和粘贴功能 6
范例10-09:对指定图片的格式进行转换 6
范例10-10:旋转指定图片 7
范例10-11:对指定图片实现过滤模糊操作 8
范例10-12:使用其他内置函数 8
范例10-13:使用Pillow绘制随机点阵图和点阵图 9
范例10-14:将PNG图片转换为可读写的RLE图片 10
范例10-15:使用ImageChops模块实现图片合成 13
范例10-16:实现图像增强处理 13
范例10-17:实现同时增强处理多幅图像 14
范例10-18:对指定图片实现滤镜特效 15
范例10-19:使用ImageDraw模块绘制二维图像 16
范例10-20:使用ImageFont模块绘制二维图像 17
范例10-21:生成随机验证码图片 18
范例10-22:使用ImageFont模块绘制验证码 18
范例10-23:绘制指定年份的日历 19
10.2 pyBarcode库实战 20
范例10-24:创建EAN-13标准的条形码 20
范例10-25:将创建的EAN-13标准条形码保存为PNG图片 20
范例10-26:创建两个条形码图片 21
10.3 使用库qrcode创建二维码 21
范例10-27:将文本信息生成为一个二维码 21
范例10-28:将网址信息生成为一个二维码 22
范例10-29:将网址信息生成为一个指定样式二维码 22
范例10-30:将网址信息生成为一个带有素材图片的二维码 23
范例10-31:使用qrcode开发一个二维码生成器 24
10.4 scikit-image开发实战 26
范例10-32:安装scikit-image 26
范例10-33:使用skimage读入并显示外部图像 26
范例10-34:读取并显示外部灰度图像 27
范例10-35:读取并显示内置星空图片 27
范例10-36:读取并保存内置星空图片 28
范例10-37:显示内置星空图片的基本信息 29
范例10-38:实现内置猫图片的红色通道的效果 29
范例10-39:对内置猫图片进行二值化操作 30
范例10-40:对内置猫图片进行裁剪处理 31
范例10-41:将unit8类型转换成float类型 31
范例10-42:将float类型转换成unit8类型 31
范例10-43:将RGB图转换为灰度图 32
范例10-44:使用skimage实现绘制图片功能 32
范例10-45:使用subplot()函数绘制多视图窗口图片 33
范例10-46:使用subplots()函数绘制多视图窗口图片 34
范例10-47:使用viewer绘制并显示内置月亮图片 35
范例10-48:显示系统内指定素材图片 35
范例10-49:读取并显示文件夹pic中JPG图片的个数 36
范例10-50:将指定素材图片批量转换为灰度图 36
范例10-51:使用函数concatenate_images(ic)连接图片 37
范例10-52:改变指定图片的大小 37
范例10-53:使用函数rescale()缩放指定图片 38
范例10-54:使用函数rotate()旋转指定图片 38
10.5 使用face_recognition 实现人脸识别 39
范例10-55:搭建开发环境 39
范例10-56:显示指定人像的人脸特征 39
范例10-57:在指定照片中识别人脸 40
范例10-58:识别照片中的所有人脸 41
范例10-59:判断照片中是否包含某个人脸 43
范例10-60:识别照片中的人到底是谁 43
范例10-61:摄像头实时识别 44
第 11章 多线程开发实战 46
11.1 使用threading模块 47
范例11-01:使用_thread模块创建2个线程 47
范例11-02:直接在线程中执行函数 47
范例11-03:通过继承类threading.Thread创建线程 48
范例11-04:使用方法join()实现线程等待 48
范例11-05:使用RLock实现线程同步 49
范例11-06:使用Lock对临界区加锁 49
范例11-07:使用上下文管理器避免死锁 50
范例11-08:测试前面上下文管理器文件的功能 51
范例11-09:5位哲学家就餐问题 52
范例11-10:使用Condition实现一个捉迷藏游戏 53
范例11-11:实现一个周期性的定时器 54
范例11-12:使用Semaphore对象执行4个线程 55
范例11-13:只唤醒一个单独的等待线程 55
范例11-14:使用BoundedSemaphore对象执行4个线程 56
范例11-15:使用Event对象实现线程同步 57
范例11-16:使用Event对象同步线程的启动 57
范例11-17:使用Timer设置线程延迟5s后执行 58
范例11-18:使用local对象管理线程局部数据 59
范例11-19:使用local()创建一个线程本地存储对象 59
11.2 使用进程库multiprocessing 60
范例11-20:使用Process对象生成进程 60
范例11-21:使用Pipe对象创建双向管道 61
范例11-22:使用Queue对象放入进程 61
范例11-23:使用Connection对象处理数据 62
范例11-24:使用Shared对象在共享内存中创建共享ctypes对象 62
范例11-25:使用Manager对象操作列表 63
范例11-26:使用Manager对象共享对象类型 63
范例11-27:使用Proxy对象共享对象类型 64
范例11-28:使用Pool对象创建多个进程并实现并发处理 65
范例11-29:使用Pool对象实现进程调度 65
范例11-30:使用Pool对象并行处理某个目录下的文件 66
范例11-31:使用线程和队列实现Actor并发编程模式 67
范例11-32:使用元组的形式传递带标签消息 68
范例11-33:实现一个Actor并发编程模式的变种 69
11.3 使用库concurrent.futures 69
范例11-34:使用submit()方法操作线程池 70
范例11-35:使用map()方法返回迭代器结果 70
范例11-36:使用wait()方法返回一个元组 70
范例11-37:使用ThreadPoolExecutor实现异步调用 71
范例11-38:使用ProcessPoolExecutor实现异步调用 71
范例11-39:使用线程池服务 客户端 72
范例11-40:手动创建自己的 线程池 73
范例11-41:使用ThreadPoolExecutor 创建线程池的优势 73
范例11-42:读取数据并标识出 所有访问过文件 73
范例11-43:实现多核读取操作 74
范例11-44:使用类Future实现 封装操作 75
范例11-45:使用生成器代替 线程实现并发 76
范例11-46:使用生成器来实现Actor并发 77
11.4 使用sched模块 78
范例11-47:使用类scheduler实现时间调度 78
范例11-48:使用scheduler对象实现时间调度 78
范例11-49:使用sched()方法定时执行任务 79
范例11-50:使用sched循环执行任务 79
范例11-51:使用queue模块实现线程之间数据通信 80
范例11-52:构建一个线程安全的优先级队列 81
范例11-53:实现FIFO队列 82
范例11-54:实现LIFO队列 83
范例11-55:使用模块queue实现优先级队列 83
范例11-56:轮询多个线程队列 83
11.5 使用模块subprocess 85
范例11-57:使用模块subprocess创建子进程 85
范例11-58:使用类Popen创建进程并执行指定源码 86
第 12章 Python游戏开发实战 87
12.1 简单的小游戏 88
范例12-01:猜数游戏 88
范例12-02:龙的世界游戏 89
范例12-03:Hangman游戏 90
范例12-04:恺撒密码游戏 94
范例12-05:维吉尼亚密码游戏 94
范例12-06:Reversi黑白棋游戏 95
范例12-07:石头、剪子、布游戏 99
12.2 Pygame游戏开发初级实战 101
范例12-08:安装Pygame 101
范例12-09:开发第 一个Pygame程序 102
范例12-10:处理键盘事件 103
范例12-11:在全屏显示模式和非全屏显示模式之间进行切换 104
范例12-12:显示指定样式文字 104
范例12-13:实现一个三原色颜色滑动条效果 105
范例12-14:随机在屏幕上绘制点 106
范例12-15:随机在屏幕中绘制各种多边形 107
12.3 Pygame游戏开发高级实战 108
范例12-16:开发一个俄罗斯方块游戏 108
范例12-17:仿微信飞机游戏 115
范例12-18:简单的贪吃蛇游戏 117
范例12-19:推箱子游戏 120
范例12-20:吃苹果游戏 123
范例12-21:简易跑酷游戏 125
范例12-22:小猫吃鱼游戏 128
范例12-23:分析官网的坦克大战游戏 129
范例12-24:两种贪吃蛇游戏方案 132
范例12-25:简易俄罗斯方块游戏 139
12.4 Cocos2d游戏开发实战 140
范例12-26:第 一个Cocos2d程序 140
范例12-27:创建层 141
范例12-28:在层中添加事件 142
范例12-29:在层中添加动作 143
范例12-30:在层中使用鼠标按键事件 144
范例12-31:使用地图 145
范例12-32:2048游戏 145
范例12-33:贪吃蛇游戏 147
范例12-34:水果连连看游戏 148
范例12-35:AI智能贪吃蛇方案 149
范例12-36:AI智能五子棋游戏 152
第 13章 数据可视化实战 156
13.1 使用Matplotlib 157
范例13-01:安装Matplotlib 157
范例13-02:绘制散点图 158
范例13-03:绘制一个简单的折线图 159
范例13-04:设置标签文字和线条粗细 160
范例13-05:绘制指定样式的散点图 160
范例13-06:绘制柱状图 161
范例13-07:绘制有说明信息的柱状图 162
范例13-08:绘制一个比较美观的柱状图 163
范例13-09:绘制多幅子图 165
范例13-10:在一个坐标系中绘制两个折线图 166
范例13-11:使用正弦函数和余弦函数绘制曲线 167
范例13-12:使用Matplotlib的默认配置绘图 167
范例13-13:绘制随机漫步图 168
范例13-14:绘制3D图表 170
范例13-15:绘制波浪图 171
范例13-16:绘制散点图 171
范例13-17:绘制等高线图 171
范例13-18:绘制饼状图 172
范例13-19:大数据分析2014年*高温度和*低温度 173
范例13-20:在tkinter中使用Matplotlib绘制图表 174
13.2 使用库pygal 175
范例13-21:安装库pygal 176
范例13-22:使用pygal模拟掷骰子 176
范例13-23:模拟同时掷两个骰子 177
13.3 读写处理CSV文件 178
范例13-24:输出CSV文件中的日期和标题 178
范例13-25:将数据保存为CSV格式 179
范例13-26:读取指定CSV文件的文件头 179
范例13-27:输出CSV文件的文件头和对应位置 180
范例13-28:输出CSV文件中每天的*高气温 180
范例13-29:根据CSV文件数据绘制图表 181
范例13-30:提取CSV数据并保存到MySQL数据库 181
范例13-31:提取CSV数据并保存到SQLite数据库 184
13.4 使用库pandas 185
范例13-32:安装库pandas并测试是否安装成功 185
范例13-33:读取并显示CSV文件中的前3条数据 186
范例13-34:更加规整地读取并显示CSV文件中的前3条数据 186
范例13-35:读取并显示CSV文件中的某列数据 187
范例13-36:用统计图表展示CSV中的某列数据 187
范例13-37:选择指定数据 188
范例13-38:显示CSV文件中某列和某行数据 188
范例13-39:在图表中统计显示CSV文件中的出现次数前10名信息 191
范例13-40:统计文件bikes.csv中每个月的骑行数据 192
范例13-41:输出某街道前5天的骑行数据 192
范例13-42:使用时间序列功能 193
范例13-43:获取某一天是星期几 193
范例13-44:统计周一到周日每天的骑行数据 193
范例13-45:使用Matplotlib图表统计周一到周日每天的骑行数据 194
范例13-46:使用Matplotlib统计某区域的全年天气数据 194
范例13-47:输出CSV文件中的全部天气信息 195
13.5 使用库NumPy 195
范例13-48:安装库NumPy并创建一个2×3的二维数组 196
范例13-49:索引数组中的元素 196
范例13-50:使用内置函数操作数组 196
范例13-51:使用arange()函数创建数组并进行迭代 197
范例13-52:数组转置和修改 197
范例13-53:返回展开为一维数组的副本 197
范例13-54:使用字符串函数 198
范例13-55:使用正弦、余弦和正切函数 199
范例13-56:使用算术函数实现四则运算 199
范例13-57:从给定数组的元素中沿指定轴返回*小值和*大值 200
范例13-58:使用函数sort()实现快速排序 200
范例13-59:使用函数byteswap()实现字节交换 201
范例13-60:使用函数empty()返回一个矩阵 202
范例13-61:在NumPy中使用Matplotlib 202
范例13-62:使用Matplotlib绘制正弦波图 203
范例13-63:使用Matplotlib绘制直方图 203
第 14章 Flask Web开发实战 204
14.1 Flask Web初级实战 205
范例14-01:安装Flask 205
范例14-02:第 一个Flask Web程序 205
范例14-03:使用PyCharm开发Flask程序 206
范例14-04:传递URL参数 208
范例14-05:使用GET请求获取URL参数 208
范例14-06:使用cookie跟踪用户行为 209
范例14-07:使用Flask-Script扩展增强程序功能 210
范例14-08:使用模板 211
范例14-09:使用Flask-Bootstrap
扩展 212范例14-10:使用Flask-Moment
扩展本地化日期和时间 214
范例14-11:使用Flask-WTF扩展处理Web表单 215
范例14-12:文件上传系统 217
范例14-13:用户注册登录系统 218
范例14-14:使用Flask-SQLAlchemy管理数据库 220
范例14-15:使用Flask-Mail 扩展发送电子邮件 222
范例14-16:使用SendGrid发送邮件 225
14.2 Flask Web高级实战 227
范例14-17:Python+Flask+MySQL开发信息发布系统 227
范例14-18:图书借阅管理系统 230
范例14-19:Flask+TinyDB实现个人日志系统 235
范例14-20:使用Peewee+Flask+MySQL开发一个在线留言系统 240
范例14-21:使用Flask+MySQL
开发一个信息发布系统 241
第 15章 Django Web开发实战 245
15.1 Django Web初级实战 246
范例15-01:安装Django 246
范例15-02:第 一个Django项目 246
范例15-03:在URL中传递参数 248
范例15-04:使用模板 250
范例15-05:使用表单 251
范例15-06:实现基本的数据库操作 252
15.2 Django Web高级实战 253
范例15-07:使用Django后台管理系统开发一个博客系统 253
范例15-08:开发一个新闻聚合系统 256
范例15-09:开发一个在线商城系统 262
范例15-10:智能书签管理系统 270
范例15-11:智能新闻发布系统 274
范例15-12:智能图书借阅系统 277
范例15-13:Django+ Vue在线聊天室系统 280
15.3 使用库Mezzanine 281
范例15-14:使用Mezzanine开发一个内容管理系统 281
范例15-15:基于Cartridge的购物车程序 283
范例15-16:在线BBS论坛系统 285
第 16章 三维立体程序开发实战 290
16.1 使用Matplotlib绘制三维图形 291
范例16-01:绘制一个简单的3D图形 291
范例16-02:绘制3D曲线 291
范例16-03:绘制3D轮廓图 292
范例16-04:绘制3D直方图 293
范例16-05:绘制3D网状线 293
范例16-06:绘制3D三角面片图 293
范例16-07:绘制3D散点图 294
范例16-08:绘制3D文字 295
范例16-09:绘制3D条形图 296
范例16-10:绘制3D曲面图 296
范例16-11:绘制3D散点图 297
范例16-12:绘制混合图 298
范例16-13:绘制子图 298
范例16-14:绘制3D坐标系 299
16.2 使用OpenGL绘制三维图形 300
范例16-15:安装PyOpenGL 301
范例16-16:第 一个PyOpenGL程序 301
范例16-17:点线面的绘制 302
范例16-18:绘制平方曲线 304
范例16-19:绘制立方曲线 305
范例16-20:绘制艺术图像 306
范例16-21:绘制不同的线条 307
范例16-22:绘制平滑阴影三角形 308
范例16-23:渲染一个简单的立方体 309
范例16-24:实现灯光渲染 309
范例16-25:灯光渲染陈列茶壶 310
范例16-26:控制旋转物体 313
范例16-27:实现一个简单的动画 313
范例16-28:实现旋转复杂图形的动画 314
范例16-29:实现一个简单的3D游戏 315
范例16-30:移动的3D立方体 319
范例16-31:飞翔的立方体世界 320
16.3 使用Panda3D绘制三维图形 321
范例16-32:安装Panda3D并
创建第 一个Panda3D程序 321
范例16-33:熊猫游戏 324
范例16-34:迷宫中的小球游戏 324
范例16-35:飞船大作战游戏 328
范例16-36:拳击赛游戏 330
范例16-37:超级大恐龙 331
范例16-38:熊猫游乐场游戏 332
范例16-39:魔幻迪厅游戏 332
范例16-40:魔幻萤火虫之夜 333
范例16-41:奔跑的精灵 333
第 17章 Python算法实战 334
17.1 常用的算法思想实战 335
范例17-01:使用递归函数创建质数 335
范例17-02:实现拓扑排序 335
范例17-03:使用分治算法求顺序表的*大值 335
范例17-04:判断某个元素是否在其中 336
范例17-05:找出一组序列中的第k小的元素 336
范例17-06:使用回溯法求集合{1, 2, 3, 4}的所有子集 337
范例17-07:获取[1,2,3,4]的所有排列 338
范例17-08:回溯法的8“皇后”问题 339
范例17-09:使用回溯法解决迷宫问题 340
范例17-10:使用回溯法解决背包问题 341
范例17-11:找出从正整数1,2,3…n中任取r个数的所有组合 342
范例17-12:使用回溯法实现图的遍历 343
范例17-13:使用回溯法解决旅行者交通费用问题 344
范例17-14:使用回溯法解决图的着色问题 346
范例17-15:实现 'a'、'b'、'c'、'd' 4个元素的全排列 347
范例17-16:解决选排列问题 348
范例17-17:解决*佳作业调度问题 350
范例17-18:*长公共子序列 351
范例17-19:爬楼梯问题 352
范例17-20:使用穷举法计算24点 353
范例17-21:穷举指定长度的所有字符串 353
范例17-22:使用穷举法计算平方根 354
范例17-23:解决一个数学问题 354
范例17-24:使用递归法计算斐波那契数列的第n项 355
范例17-25:使用递归法计算两个数的乘积 355
范例17-26:计算n的阶乘 356
范例17-27:使用递归算法解决“汉诺塔”问题 356
范例17-28:利用递归算法获取
斐波那契数列前n项的值 358
范例17-29:利用切片递归方式查找数据 358
范例17-30:顺时针90°调换二维数组中的数据 359
范例17-31:换零钱的问题 359
范例17-32:使用递归算法实现二分法查找 360
范例17-33:小球弹跳递归计算距离 360
范例17-34:深度优先与广度优先遍历的递归实现 360
17.2 排序操作算法实战 362
范例17-35:实现快速排序 362
范例17-36:实现合并排序 363
范例17-37:使用递归算法实现快速排序 363
范例17-38:实现冒泡排序 363
范例17-39:实现从大到小的冒泡排序 364
范例17-40:冒泡排序的另外方案 364
范例17-41:冒泡排序的降序排列 365
范例17-42:实现基本的快速排列 366
范例17-43:实现插入排序 366
范例17-44:实现无序数据的插入排序 367
范例17-45:实现固定数据的插入排序 367
范例17-46:排序随机生成的0~100的数值 368
范例17-47:实现选择排序 368
范例17-48:实现直接选择排序 369
范例17-49:实现选择排序的操作步骤 369
范例17-50:选择排序和Python
内置函数的效率对比 370
范例17-51:使用选择排序处理字符 371
范例17-52:排序处理多个队列 372
范例17-53:使用堆排序 372
范例17-54:使用堆排序处理数据 373
范例17-55:将数组按照堆输出 374
范例17-56:在堆内实现任意查找 374
范例17-57:实现*小堆 375
范例17-58:使用堆进行排序 376
范例17-59:实现大顶堆排序 377
范例17-60:实现堆排序的3种方式 378
范例17-61:实现基数排序 379
范例17-62:实现桶排序 380
范例17-63:实现计数排序 380
范例17-64:实现希尔排序 381
范例17-65:展示希尔排序的步骤 381
范例17-66:利用希尔排序排列一个列表 382
范例17-67:实现折半插入排序 382
范例17-68:实现归并排序 383
范例17-69:使用归并排序处理指定列表 384
范例17-70:归并排序的另外解决方案 384
范例17-71:使用归并排序处理两个列表 385
范例17-72:浮点数的归并排序 385
范例17-73:使用折半查找算法 386
范例17-74:展示归并排序的处理步骤 387
17.3 经典数据结构开发实战 387
范例17-75:汉诺塔问题 387
范例17-76:简单的爬楼梯问题 387
范例17-77:*近点对问题 388
范例17-78:从数组中找出指定和的数值组合 389
范例17-79:找零问题 390
范例17-80:马踏棋盘 391
范例17-81:渡过问题 392
范例17-82:1000以内的完全数 393
范例17-83:多进程验证哥德巴赫猜想 394
范例17-84:高斯消元法解线性方程组 395
范例17-85:歌星大奖赛 398
范例17-86:捕鱼和分鱼 398
范例17-87:平分7筐鱼 399
范例17-88:百钱买百鸡 400
作者简介
张善香 Java、C++、PHP、Python等开发语言,现在负责云的研发和架构工作。从2014年起便开始研究机器学习课题,是国内*早从事相关研究的专家之一。
-
深度学习的数学
¥43.5¥69.0 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥31.9¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥76.3¥109.0 -
UG NX 12.0数控编程
¥22.1¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥83.3¥119.0 -
Visual Basic 语言程序设计基础(第6版)
¥32.0¥45.0 -
贝叶斯推理与机器学习
¥139.3¥199.0