• PYTHON极客项目编程(第2版)
21年品牌 40万+商家 超1.5亿件商品

PYTHON极客项目编程(第2版)

全新正版 极速发货

29.89 4.3折 69.8 全新

库存611件

广东广州
认证卖家担保交易快速发货售后保障

作者[美] 马赫什·文基塔查拉姆(Mahesh Venkitachalam)

出版社人民邮电出版社

ISBN9787115642363

出版时间2024-07

装帧平装

开本16开

定价69.8元

货号1203305049

上书时间2024-07-02

徐小智的书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
作者简介
马赫什·文基塔查拉姆(Mahesh Venkitachalam)是一名计算机图形学和嵌入式系统顾问,拥有二十余年从业经验。他是Electronut Labs的创始人,该公司以开发充满创意的开源硬件著称。他经常撰写有关编程和电子技术的博客。

目录
第 一部分 热身 
第 1 章 科赫雪花    2 
1.1 工作原理    2 
1.1.1 使用递归    2 
1.1.2 构建科赫雪花    3 
1.1.3 使用海龟绘图法绘图    6 
1.2 需求    8 
1.3 代码    8 
1.3.1 计算点的坐标    8 
1.3.2 递归    8 
1.3.3 绘制片段    9 
1.3.4 编写函数 main()    9 
1.4 运行程序    10 
1.5 小结    10 
1.6 实验    11 
1.7 完整代码    11 
第 2 章 繁花曲线    13 
2.1 工作原理    13 
2.1.1 理解参数方程    13 
2.1.2 使用海龟绘图法绘制曲线    15 
2.2 需求    16 
2.3 代码    17 
2.3.1 绘制繁花曲线    17 
2.3.2 协调动画    20 
2.3.3 保存曲线    22 
2.3.4 分析命令行参数及初始化    23 
2.4 运行程序    24 
2.5 小结    25 
2.6 实验    26 
2.7 完整代码    26 
第二部分 模拟生命 
第 3 章 康威生命游戏    32 
3.1 工作原理    32 
3.2 需求    34 
3.3 代码    34 
3.3.1 显示网格    34 
3.3.2 设置初始状态    35 
3.3.3 实现边界条件    36 
3.3.4 实现规则    37 
3.3.5 向程序传递命令行参数    37 
3.3.6 初始化    38 
3.4 运行程序    38 
3.5 小结    40 
3.6 实验    40 
3.7 完整代码    40 
第 4 章 使用 Karplus-Strong 算法生成泛音    43 
4.1 工作原理    442
4.1.1 模拟    45 
4.1.2 WAV 文件格式    46 
4.1.3 小调五声音阶    47 
4.2 需求    48 
4.3 代码    48 
4.3.1 使用 deque 实现环形缓冲区    48 
4.3.2 实现 Karplus-Strong算法    48 
4.3.3 写入 WAV 文件    50 
4.3.4 使用 PyAudio 播放 WAV文件    50 
4.3.5 创建音符及分析参数    52 
4.4 运行弹拨乐器模拟程序    53 
4.5 小结    54 
4.6 实验    54 
4.7 完整代码    54 
第 5 章 群体行为模拟    58 
5.1 工作原理    58 
5.2 需求    59 
5.3 代码    59 
5.3.1 初始化模拟    59 
5.3.2 设置边界条件    60 
5.3.3 绘制个体    62 
5.3.4 应用群体行为规则    63 
5.3.5 影响模拟    67 
5.3.6 分步模拟    68 
5.3.7 分析参数及实例化Boids 类    69 
5.4 运行群体行为模拟程序    69 
5.5 小结    69 
5.6 实验    70 
5.7 完整代码    70 
第三部分 好玩的图形 
第 6 章 文本图形    74 
6.1 工作原理    75 
6.2 需求    76 
6.3 代码    76 
6.3.1 定义灰度标尺和网格    76 
6.3.2 计算平均亮度    77 
6.3.3 根据图像生成 ASCII 内容    77 
6.3.4 定义命令行参数    78 
6.3.5 将表示文本图形的字符串写入文本文件    79 
6.4 运行文本图形生成程序    79 
6.5 小结    80 
6.6 实验    80 
6.7 完整代码    80 
第 7 章 照片马赛克    83 
7.1 工作原理    83 
7.1.1 分割目标图像    84 
7.1.2 计算平均 RGB 值    84 
7.1.3 匹配图像    85 
7.2 需求    87 
7.3 代码    87 
7.3.1 读入输入图像    87 
7.3.2 计算图像的平均 RGB 值    88 
7.3.3 将目标图像分割为网格    88 
7.3.4 查找与分片最匹配的图像    89 
7.3.5 创建图像网格    90 
7.3.6 创建照片马赛克    91 
7.3.7 编写函数 main()    93 
7.4 运行照片马赛克生成程序    94
7.5 小结    95 
7.6 实验    95 
7.7 完整代码    95 
第 8 章 裸眼立体画    101 
8.1 工作原理    102 
8.1.1 感知裸眼立体画中的深度    102 
8.1.2 使用深度图    103 
8.1.3 平移像素    105 
8.2 需求    106 
8.3 代码    106 
8.3.1 创建由随机圆组成的分片    106 
8.3.2 重复分片    107 
8.3.3 创建裸眼立体画    108 
8.3.4 提供命令行参数    109 
8.4 运行裸眼立体画生成程序    109 
8.5 小结    110 
8.6 实验    111 
8.7 完整代码    111 
第四部分 走进三维 
第 9 章 理解 OpenGL    116 
9.1 OpenGL 的工作原理    117 
9.1.1 图元    117 
9.1.2 三维变换    118 
9.1.3 着色器    120 
9.1.4 顶点缓存    121 
9.1.5 纹理映射    121 
9.1.6 OpenGL 上下文    122 
9.2 需求    122 
9.3 代码    122 
9.3.1 RenderWindow 类    123 
9.3.2 Scene 类    125 
9.3.3 辅助函数    129 
9.4 运行 OpenGL 应用程序    130 
9.5 小结    130 
9.6 实验    130 
9.7 完整代码    131 
第 10 章 圆环面上的康威生命游戏    136 
10.1 工作原理    136 
10.1.1 计算顶点   136 
10.1.2 计算光照法线    138 
10.1.3 渲染    139 
10.1.4 给三角形带着色    140 
10.1.5 控制相机   140 
10.1.6 将网格映射到圆环面    141 
10.2 需求    142 
10.3 代码    142 
10.3.1 渲染圆环面    142 
10.3.2 实现康威生命游戏模拟    148 
10.3.3 创建相机   149 
10.3.4 整合代码   151 
10.4 运行三维版康威生命游戏模拟    153 
10.5 小结    154 
10.6 实验    155 
10.7 完整的圆环面渲染代码    155 
10.8 完整的康威生命游戏模拟代码    160 
10.9 完整的相机创建代码    161 
10.10 RenderWindow 类的完整代码    162 
第 11 章 体渲染    166 
11.1 工作原理    166 
11.1.1 数据格式    167 
11.1.2 生成光线    167
11.1.3 OpenGL 窗口    169 
11.2 需求    169 
11.3 代码    169 
11.3.1 生成三维纹理    170 
11.3.2 生成光线    171 
11.3.3 实现体光线投射算法    176 
11.3.4 显示二维切片    180 
11.3.5 整合代码    183 
11.4 运行程序    185 
11.5 小结    185 
11.6 实验    185 
11.7 完整的三维纹理生成代码    186 
11.8 完整的光线生成代码    187 
11.9 完整的体光线投射算法代码    192 
11.10 显示二维切片的完整代码    195 
11.11 完整的主文件代码    198 
第五部分 玩转硬件 
第 12 章 在树莓派 Pico 上实现Karplus-Strong 算法    202 
12.1 工作原理    203 
12.1.1 输入和输出    203 
12.1.2 I2S 协议    204 
12.2 需求    205 
12.2.1 组装硬件    205 
12.2.2 安装 MicroPython    207 
12.3 代码    207 
12.3.1 设置    207 
12.3.2 生成音符    208 
12.3.3 播放音频    210 
12.3.4 编写函数 main()    211 
12.4 运行程序    212 
12.5 小结    213 
12.6 实验    213 
12.7 完整代码    214 
第 13 章 树莓派激光音乐秀    218 
13.1 工作原理    218 
13.1.1 使用激光生成图案    219 
13.1.2 使用快速傅里叶变换分析音频    222 
13.2 需求    224 
13.2.1 在树莓派上安装系统和软件    224 
13.2.2 搭建激光秀装置    225 
13.2.3 连接硬件   226 
13.3 代码    228 
13.3.1 设置    228 
13.3.2 控制硬件   229 
13.3.3 处理音频   230 
13.3.4 测试电机   233 
13.3.5 整合代码   234 
13.4 运行激光音乐秀程序    235 
13.5 小结    236 
13.6 实验    236 
13.7 完整代码    237 
第 14 章 物联网花园    242 
14.1 工作原理    242 
14.1.1 低功耗蓝牙    243 
14.1.2 Web 框架 Bottle    245 
14.1.3 SQLite 数据库    246 
14.2 需求    247 
14.2.1 在树莓派上安装系统和软件    247 
14.2.2 安装 CircuitPython    247
14.2.3 设置 IFTTT 服务    248 
14.3 代码    249 
14.3.1 CircuitPython 代码    249 
14.3.2 BLE 扫描器代码    252 
14.3.3 Web 服务器代码    258 
14.3.4 主程序文件    264 
14.4 运行物联网花园程序    266 
14.5 小结    267 
14.6 实验    267 
14.7 完整的 CircuitPython 代码    268 
14.8 完整的 BLE 扫描器代码    270 
14.9 完整的 Python Web 服务器代码    273 
14.10 完整的主程序代码    275 
第 15 章 树莓派音频机器学习    277 
15.1 机器学习概述    277 
15.2 工作原理    278 
15.2.1 声谱图    280 
15.2.2 在树莓派上推断    281 
15.3 需求    283 
15.4 代码    284 
15.4.1 在 Colab 中训练模型    284 
15.4.2 在树莓派上使用模型    293 
15.5 运行语音识别系统    301 
15.6 小结    302 
15.7 实验    303 
15.8 完整代码    303 
附录 A 安装 Python    309 
A.1 获取本书项目的源代码    309 
A.2 安装 Python 和 Python 模块    309 
A.2.1 Windows    309 
A.2.2 macOS    310 
A.2.3 Linux    311 
附录 B 设置树莓派    312 
B.1 安装操作系统    312 
B.2 测试连接    314 
B.3 使用 SSH 登录树莓派    315 
B.4 安装 Python 模块    316 
B.5 远程使用 Visual Studio Code    316

内容摘要
Python是一种解释型、面向对象、动态数据类型的高级程序设计语言,通过Python编程能够解决现实生活中的很多问题。本书并不介绍Python语言的基础知识,而是通过一系列有趣的项目,展示如何用Python解决各种实际问题,以及如何使用一些流行的Python库。
本书共15章,每章讲解一个有趣的Python项目,这些项目可以分成5个部分:第一部分是热身,包括科赫雪花、繁花曲线;第二部分是模拟生命,包括康威生命游戏、使用Karplus-Strong算法生成泛音、群体行为模拟;第三部分是好玩的图形,包括文本图形、照片马赛克、裸眼立体画;第四部分是走进三维,包括理解OpenGL、圆环面上的康威生命游戏、体渲染;第五部分是玩转硬件,包括在树莓派Pico上实现Karplus-Strong算法、树莓派激光音乐秀、物联网花园、树莓派音频机器学习。此外,本书还通过附录介绍如何安装Python和设置树莓派。
本书适合已经了解了基本的Python语法和编程知识、想要尝试和探索通过Python编程解决实际问题的读者阅读,也可作为Python初学者练习项目开发的参考用书。

主编推荐
Python以其简洁的语法、强大的功能、较低的学习门槛而受到广大编程爱好者的喜爱。但是,学习完Python的基础语法和编程知识后,如何提升Python编程技能呢?
本书通过15个有趣且富有创造性的编程项目,教你用Python生成图像和音乐、模拟现实世界中的现象,并与树莓派等硬件进行交互。

本书项目涵盖绘画、图像处理、3D渲染、树莓派、物联网、AI机器学习等,讲解众多实用的Python库:NumPy、Matplotlib、scipy、PyAudio、Pillow、sqlite3、turtle、math、argparse、OpenGL、tensorflow……
●  使用海龟绘图法绘制复杂的分形图案和繁花曲线;
●  模拟弹拨乐器的声音生成音乐;
●  设计引人入胜的元胞自动机并实现群体行为模拟;
●  实现二维和三维空间中的康威生命游戏;
●  将普通图像转换为文本图形、照片马赛克和令人惊叹的裸眼立体画;
●  探索3D图形,从基本的形状渲染到MRI和CT扫描数据的可视化;
●  使用树莓派创建随音乐起舞的激光表演和物联网花园监测器;
●  构建使用机器学习驱动的语音识别系统。

每个项目都按照【讲解原理-分析需求-代码精讲-知识小结-扩展练习-完整代码】的方式进行讲解,并提供可下载运行的源代码,赠送Python排障手册+程序员面试手册

本书相比上一版进行了如下修订:
(1)新增 替换5个全新项目,紧跟前沿热点
(2)基于Python 3.9全面更新所有项目
(3)采用更新、更实用的Python方法和算法
(4)使用Anaconda简化Python安装
(5)简化硬件项目的组装过程,专注于Python编程

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP