-
内容大纲
本书基于Python语言,通过项目展示Python的奇妙应用,适合Python初学者学习。在本书中,你将使用Python编程语言模拟探索火星、木星以及银河系最遥远的地方,体验诗人的意境,了解高级的金融知识等。你还会学到各种各样的技术,如马尔可夫链分析技术、蒙特卡罗模拟、图像叠加技术、基因遗传算法等。与此同时,你还会学习一些模块的使用方法,例如pygame、Pylint、pydocstyle、Tkinter、python-docx、Matplotlib和pillow等。
本书基于一些有趣的项目进行讲解,能够让读者在新奇的项目案例中体验学习Python的乐趣。此外,读者还能将自己所学的知识与实际的应用程序开发、数据库设计和解决实际问题联系起来,提升自己的项目实践能力。 -
作者介绍
-
目录
第1章 虚假姓名生成器
1.1 项目1:生成假名
1.1.1 项目规划与设计
1.1.2 策略
1.1.3 伪代码
1.1.4 代码
1.2 本章小结
1.3 延伸阅读
1.3.1 伪代码编写标准
1.3.2 编程规范
1.3.3 第三方模块
1.4 实践项目
1.4.1 儿童黑话
1.4.2 简单条形图
1.5 挑战项目
1.5.1 拉丁文简单条形图
1.5.2 中间名
1.5.3 挑战不同的项目
第2章 寻找回文
2.1 寻找和加载字典文件
2.1.1 处理文件打开异常
2.1.2 加载字典文件
2.2 项目2:寻找回文单词
2.2.1 策略和伪代码
2.2.2 寻找回文单词的代码
2.3 项目3:寻找回文短语
2.3.1 策略和伪代码
2.3.2 寻找回文短语的代码
2.3.3 程序性能分析
2.4 本章小结
2.5 延伸阅读
2.6 实践项目:字典清理
2.7 挑战项目:用递归方法查找回文
第3章 寻找易位词
3.1 项目4:寻找单词的易位词
3.1.1 策略和伪代码
3.1.2 寻找易位词的代码
3.2 项目5:寻找易位短语
3.2.1 策略和伪代码
3.2.2 寻找易位短语的代码
3.3 项目6:寻找伏地魔(Voldemort)——高卢人策略
3.4 项目7:寻找伏地魔(Voldemort)——英式蛮力方式
3.4.1 策略
3.4.2 英式蛮力方式的代码
3.5 本章小结
3.6 延伸阅读
3.7 实践项目:寻找二元字母组
3.8 挑战项目:易位词自动生成器
第4章 破解美国内战密码
4.1 项目8:路由密码
4.1.1 策略
4.1.2 伪代码
4.1.3 解密路由密码的代码
4.1.4 破解路由密码
4.1.5 增加用户接口
4.2 项目9:栅栏密码
4.2.1 策略
4.2.2 使用栅栏密码加密代码
4.2.3 使用栅栏密码解密代码
4.3 本章小结
4.4 延伸阅读
4.5 实践项目
4.5.1 黑客林肯
4.5.2 判断密码类型
4.5.3 以字典的形式存储密钥
4.5.4 自动生成可能的密钥
4.5.5 路由换位密码:暴力破解
4.6 挑战项目
4.6.1 路由密码编码器
4.6.2 三栏式栅栏密码
第5章 编写英国内战密码
5.1 项目10:Trevanion密码
5.1.1 策略和伪代码
5.1.2 Trevanion密码的代码
5.2 项目11:编写空密码
5.2.1 清单型空密码的代码
5.2.2 清单型空密码程序的输出
5.3 本章小结
5.4 延伸阅读
5.5 实践项目
5.5.1 营救玛丽
5.5.2 科尔切斯特脱险
第6章 隐写术
6.1 项目12:隐藏维吉尼亚密码
6.1.1 程序运行平台
6.1.2 策略
6.1.3 伪代码
6.1.4 代码
6.1.5 添加维吉尼亚密码
6.1.6 检测隐藏消息
6.2 本章小结
6.3 延伸阅读
6.4 实践项目:检查空行数
6.5 挑战项目:使用Monospace字体
第7章 用遗传算法培育大鼠
7.1 在所有解中寻找最优解
7.2 项目13:培育超级老鼠大军
7.2.1 策略
7.2.2 培育超级大鼠的代码
7.2.3 项目小结
7.3 项目14:破解高科技保险柜
7.3.1 策略
7.3.2 保险柜破解器的代码
7.4 本章小结
7.5 延伸阅读
7.6 挑战项目
7.6.1 为老鼠建立“后宫”
7.6.2 创建更高效的破解器
第8章 统计俳句音节数
8.1 日本俳句
8.2 项目15:统计音节数
8.2.1 策略
8.2.2 管理缺失单词
8.2.3 音节计数程序代码
8.2.4 编写检查音节计数程序的程序
8.3 本章小结
8.4 延伸阅读
8.5 实践项目:音节计数器对比字典文件计数器
第9章 用马尔可夫链分析技术编写俳句
9.1 项目16:马尔可夫链分析
9.1.1 策略
9.1.2 伪代码
9.1.3 训练语料库
9.1.4 程序调试
9.1.5 程序代码
9.1.6 输出结果
9.2 本章小结
9.3 延伸阅读
9.4 挑战项目
9.4.1 新词生成器
9.4.2 图灵测试
9.4.3 俳句判断
9.4.4 马尔可夫音乐
第10章 我们孤独吗——探索费米悖论
10.1 项目17:模拟银河系
10.1.1 策略
10.1.2 估算文明的数量
10.1.3 选择无线电气泡大小
10.1.4 得出探测概率计算公式
10.1.5 计算探测概率的代码
10.1.6 建立图形模型
10.1.7 结果分析
10.2 本章小结
10.3 延伸阅读
10.4 实践项目
10.4.1 遥远的银河
10.4.2 建立银河系帝国
10.4.3 预测可探测性的迂回方法
10.5 挑战项目
10.5.1 创造条状螺旋银河系
10.5.2 为你的星系添加可居住区
第11章 蒙蒂·霍尔问题
11.1 蒙特卡罗模拟
11.2 项目18:验证萨凡特说法的正确性
11.2.1 策略
11.2.2 验证萨凡特说法的代码
11.3 项目19:蒙蒂霍尔游戏
11.3.1 面向对象程序设计简介
11.3.2 策略和伪代码
11.3.3 蒙蒂霍尔游戏代码
11.4 本章小结
11.5 延伸阅读
11.6 实践项目:生日悖论
第12章 储蓄安全
12.1 项目20:模拟退休生活
12.1.1 策略
12.1.2 伪代码
12.1.3 获取历史收益数据
12.1.4 程序代码
12.2 本章小结
12.3 延伸阅读
12.4 挑战项目
12.4.1 一图值千金
12.4.2 组合投资
12.4.3 我的运气
12.4.4 财富值排序
第13章 模拟外星火山
13.1 项目21:艾奥之羽
13.1.1 认识pygame
13.1.2 策略
13.1.3 代码
13.1.4 运行模拟程序
13.2 本章小结
13.3 延伸阅读
13.4 实践项目:抛射
13.5 挑战项目
13.5.1 羽流冠
13.5.2 “泉源”——粒子运动轨迹
13.5.3 弹丸
第14章 用探测器绘制火星地图
14.1 与游戏有关的航天及动力学知识
14.1.1 万有引力定律
14.1.2 开普勒行星运动定律
14.1.3 轨道力学
14.1.4 向后飞行
14.1.5 提升和降低轨道高度
14.1.6 走内线
14.1.7 圆化椭圆形轨道
14.1.8 用霍曼转移提升和降低轨道
14.1.9 利用单次切向点火提升和降低轨道高度
14.1.10 利用螺旋转移实现轨道高度螺旋式改变
14.1.11 实现同步轨道
14.2 项目22:火星轨道飞行器游戏
14.2.1 策略
14.2.2 游戏资源
14.2.3 程序代码
14.3 本章小结
14.4 挑战项目
14.4.1 设置游戏启动画面
14.4.2 智能仪表
14.4.3 无线电黑障
14.4.4 游戏评分
14.4.5 策略指南
14.4.6 大气制动
14.4.7 入侵警报
14.4.8 越过极地
第15章 用行星叠加技术完善天体摄影图片
15.1 项目23:叠加木星照片
15.1.1 认识pillow模块
15.1.2 操作文件和目录
15.1.3 从视频获取图片
15.1.4 策略
15.1.5 代码
15.2 本章小结
15.3 延伸阅读
15.4 挑战项目:消失之法
附录 实践项目解决方案
第1章 虚假姓名生成器
第2章 寻找回文
第3章 寻找易位词
第4章 破解美国内战密码
第5章 编写英国内战密码
第6章 隐写术
第8章 统计俳句音节数
第10章 我们孤独吗——探索费米悖论
第11章 蒙蒂·霍尔问题
第13章 模拟外星火山
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...