描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787122349231
Python的设计理念是无所不用其极地适合人的直觉,这让Python学习者的注意力无需过多纠缠于语法等细节,而可以更多地集中在“程序设计思维”上,这是初学编程非常重要的东西。
为此本书内容编排 均以 用计算机解决问题 、用Python编程思维实现功能 为目标,以Python3.5为蓝本,全面讲解Python的编程基础、软件结构、常用模块等编程知识以及基于Python编程的多个游戏综合设计实例等。
* 以实例引导,注重编程及整体程序的简洁、实用,每个案例都经过调试、验证,可以直接用于开发实践;
* 所有实例及程序源代码提供电子资料包直接下载;
* 程序开发难点、重点有视频直观讲解,配套视频做成二维码直接扫码学习。
本书从初学者学习角度出发,通过四个部分:Python 编程基础、大家一起来编程、编程进阶、程序调试与数据库,全面讲解了 Python 的编程基础、软件结构、常用模块等编程知识以及基于 Python 编程的多个游戏综合设计实例,同时也介绍了 Python 文本操作与数据库的有关技巧,不仅适于初学者入门,也利于 Python 开发者全面提高技能。
书中每一章都有配套教学视频,详细讲解操作步骤、编程技巧和注意事项,读者可以扫描每一章的二维码详细、直观学习,如同老师现场指导。
本书可供 Python 编程爱好者、初学者学习使用,也适合作为中学生“信息技术”课程的配套阅读资料,同时也可作为创客教育机构的教学用书。
第一部分 Python编程基础
第1章 Python安装
1.1 搭建编程环境 / 2
1.2 不同操作系统中搭建Python编程环境 / 3
1.2.1 电脑上安装Python / 3
1.2.2 在苹果OSX上安装Python / 4
1.2.3 在Linux系统上安装Python / 4
第2章 Python入门基础
▼ 视频讲解
2.1 在交互式环境中输入表达式 / 6
2.2 整型、浮点型和字符串数据类型 / 9
2.2.1 改变类型 / 10
2.2.2 得到更多信息:type( ) / 12
2.2.3 类型转换错误 / 12
2.3 字符串连接和复制 / 12
2.4 在变量中保存值 / 13
2.5 第一个程序 / 13
2.6 程序剖析 / 17
2.6.1 注释 / 17
2.6.2 print( )函数 / 17
2.7 编程实例 / 18
第3章 控制流
▼ 视频讲解
3.1 布尔值 / 20
3.2 比较操作符 / 20
3.3 布尔操作符 / 21
3.3.1 二元布尔操作符 / 22
3.3.2 not操作符 / 22
3.4 混合布尔和比较操作符 / 23
3.5 控制流的元素 / 23
3.5.1 条件 / 23
3.5.2 代码块 / 23
3.6 程序执行 / 24
3.7 控制流语句 / 24
3.7.1 if语句 / 24
3.7.2 else语句 / 25
3.7.3 elif语句 / 26
3.7.4 while语句 / 28
3.7.5 Break语句 / 30
3.7.6 continue语句 / 31
3.7.7 for循环和range( )函数 / 32
3.8 导入模块 / 35
3.9 用sys.exit( )提前结束程序 / 36
3.10 编程实例 / 36
第4章 函数
▼ 视频讲解
4.1 def语句和参数 / 37
4.1.1 创建一个函数 / 37
4.1.2 参数 / 38
4.2 返回值和return语句 / 41
4.3 None值 / 42
4.4 关键字参数和print( ) / 43
4.5 局部和全局作用域 / 43
4.6 global语句 / 46
4.7 异常处理 / 48
4.8 一个小程序:猜数字 / 50
4.9 编程实例 / 52
4.9.1 Collatz序列 / 52
4.9.2 输入验证 / 52
第5章 列表
▼ 视频讲解
5.1 列表数据类型 / 53
5.1.1 创建列表 / 54
5.1.2 向列表增加元素 / 54
5.2 使用列表 / 55
5.2.1 从列表中获取内容 / 55
5.2.2 列表“分片” / 56
5.2.3 修改元素 / 57
5.2.4 向列表增加元素的其他办法 / 58
5.2.5 从列表中删除元素 / 59
5.2.6 搜索列表 / 60
5.2.7 循环处理列表 / 62
5.2.8 列表排序 / 62
5.2.9 双重列表:数据表 / 64
5.3 增加的赋值操作 / 65
5.4 方法 / 66
5.4.1 用index( )方法在列表中查找值 / 66
5.4.2 用append( )和insert( )方法在列表中添加值 / 67
5.4.3 用remove( )方法从列表中删除值 / 67
5.4.4 用sort( )方法将列表中的值排序 / 68
5.5 例子程序:神奇8球和列表 / 69
5.6 类似列表的类型:字符串和元组 / 70
5.6.1 可变和不可变数据类型 / 71
5.6.2 元组数据类型 / 72
5.6.3 用list( )和tuple( )函数来转换类型 / 73
5.7 引用 / 74
5.7.1 传递引用 / 75
5.7.2 copy模块的copy( )和deepcopy( )函数 / 76
5.8 编程实例 / 77
5.8.1 逗号代码 / 77
5.8.2 字符图网格 / 77
第6章 字典和结构化数据
▼ 视频讲解
6.1 字典数据类型 / 78
6.1.1 字典与列表 / 78
6.1.2 keys( )、values( )和items( )方法 / 80
6.1.3 检查字典中是否存在键或值 / 81
6.1.4 get( )方法 / 81
6.1.5 setdefault( )方法 / 82
6.2 漂亮打印 / 83
6.3 编程实例 / 84
第7章 字符串操作
▼ 视频讲解
7.1 处理字符串 / 86
7.1.1 字符串字面量 / 86
7.1.2 双引号 / 86
7.1.3 转义字符 / 87
7.1.4 原始字符串 / 87
7.1.5 用三重引号的多行字符串 / 88
7.1.6 井号字符(#) / 88
7.1.7 字符串下标和切片 / 89
7.1.8 字符串的in和not in操作符 / 89
7.2 有用的字符串方法 / 90
7.2.1 字符串方法upper( )、lower( )、isupper( )和islower( ) / 90
7.2.2 isX字符串方法 / 91
7.2.3 字符串方法startswith( )和endswith( ) / 93
7.2.4 字符串方法join( )和split( ) / 93
7.2.5 用rjust( )、ljust( )和center( )方法对齐文本 / 94
7.2.6 用strip( )、rstrip( )和lstrip( )删除空白字符 / 95
7.2.7 用pyperclip模块拷贝粘贴字符串 / 96
7.3 编程实例 / 97
项目1:口令保管箱 / 97
项目2:在Wiki标记中添加无序列表 / 98
第8章 Python常用模块
▼ 视频讲解
8.1 使用copy模块来复制 / 101
8.2 keyword模块记录了所有的关键字 / 105
8.3 用random模块获得随机数 / 105
8.3.1 用randint来随机挑选一个数字 / 106
8.3.2 用choice从列表中随机选取一个元素 / 107
8.3.3 用shuffle来给列表洗牌 / 107
8.4 用sys模块来控制程序 / 108
8.4.1 用exit函数来退出程序 / 108
8.4.2 从stdin对象读取 / 108
8.4.3 用stdout对象来写入 / 108
8.4.4 用的Python版本 / 109
8.5 用time模块来得到时间 / 109
8.5.1 用asctime来转换日期 / 112
8.5.2 用localtime来得到日期和时间 / 112
8.5.3 用sleep来休息一会儿 / 113
8.6 用pickle模块来保存信息 / 114
8.7 编程小测验 / 115
第9章 海龟作图
▼ 视频讲解
9.1 海龟模块 / 117
9.1.1 创建画布 / 117
9.1.2 移动海龟 / 118
9.2 从基本的正方形开始 / 122
9.3 画星星 / 122
9.4 画汽车 / 124
9.5 填色 / 126
9.5.1 用来画填色圆形的函数 / 126
9.5.2 使用纯白和纯黑 / 129
9.6 画方形的函数 / 129
9.7 画填色正方形 / 130
9.8 画填好色的星星 / 132
9.9 编程实例 / 133
第二部分 大家一起来编程
第10章 动手操作
▼ 视频讲解
10.1 三道小测试 / 136
10.2 从手指到计算机 / 137
10.3 GUI——图形用户界面 / 142
10.3.1 什么是GUI / 143
10.3.2 第一个GUI / 143
10.3.3 GUI输入 / 144
10.3.4 选择自己的口味 / 145
10.3.5 猜数字游戏 / 148
10.3.6 其他GUI组件 / 149
10.4 给数字起名字 / 150
10.5 发现循环的秘密 / 153
10.6 与循环讲条件 / 155
10.7 使用函数做计算 / 156
10.8 自己也能做动画 / 158
第11章 游戏初体验学用书
▼ 视频讲解
11.1 Pygame的用户界面 / 161
11.1.1 从一个点开始 / 162
11.1.2 Pygame和海龟图 / 163
11.1.3 游戏相关 / 164
11.2 移动和弹跳 / 167
11.2.1 让笑脸移动起来 / 167
11.2.2 实现笑脸动画 / 170
11.2.3 使笑脸弹跳起来 / 171
11.2.4 来回弹跳的笑脸 / 176
11.3 小结 / 179
第12章 互动式游戏
▼ 视频讲解
12.1 点击和拖动 / 181
12.1.1 点击 / 181
12.1.2 利用拖动进行绘制 / 183
12.2 笑脸爆炸 / 186
12.2.1 笑脸精灵 / 186
12.2.2 设置精灵 / 188
12.2.3 更新位置 / 189
12.2.4 设置大小 / 190
12.2.5 实际程序 / 190
12.3 点破气球 / 192
12.3.1 检测碰撞和删除对象 / 192
12.3.2 实际程序 / 193
12.4 小结 / 194
第三部分 编程进阶
第13章 弹球游戏
▼ 视频讲解
13.1 构建游戏框架 / 198
13.1.1 绘制游戏部件 / 199
13.1.2 记录分数 / 200
13.1.3 显示得分 / 203
13.1.4 实际程序 / 204
13.2 完善游戏 / 206
13.2.1 游戏结束 / 206
13.2.2 重新开始 / 207
13.2.3 增加难度 / 207
13.2.4 实际程序 / 209
13.3 增加更多特效 / 210
13.3.1 增加声音 / 210
13.3.2 存储游戏进度 / 211
13.3.3 实际程序 / 213
13.4 小结 / 215
第14章 大战外星人
▼ 视频讲解
14.1 规则项目 / 217
14.2 安装Pygame / 218
14.3 构建飞船 / 218
14.3.1 开始游戏项目 / 218
14.3.2 添加飞船图像 / 221
14.3.3 重构:模块game_functions / 224
14.4 驾驶飞船 / 226
14.4.1 响应按键 / 226
14.4.2 允许不断移动 / 228
14.4.3 左右移动 / 229
14.4.4 调整飞船的速度 / 231
14.4.5 限制飞船的活动范围 / 233
14.4.6 重构check_events( ) / 234
14.5 开炮射击 / 235
14.5.1 添加子弹设置 / 235
14.5.2 创建Bullet_shoot类 / 235
14.5.3 将子弹存储到编组中 / 236
14.5.4 开火 / 237
14.5.5 删除已消失的子弹 / 239
14.5.6 限制子弹数量 / 239
14.5.7 创建函数update_bullets( ) / 241
14.5.8 创建函数fire_bullet( ) / 242
14.6 创建一个外星人 / 243
14.6.1 创建Alien类 / 244
14.6.2 创建Alien实例 / 244
14.6.3 让外星人出现在屏幕上 / 245
14.7 创建一群外星人 / 246
14.7.1 确定一行可容纳多少个外星人 / 246
14.7.2 创建多行外星人 / 246
14.7.3 创建外星人群 / 247
14.7.4 重构 / 250
14.7.5 添加行 / 250
14.8 移动外星人群 / 253
14.8.1 向右移动外星人 / 253
14.8.2 创建表示外星人移动方向的设置 / 255
14.8.3 屏幕边缘判断 / 256
14.8.4 向下移动外星人群并改变移动方向 / 257
14.9 击落外星人 / 258
14.9.1 检测子弹与外星人的碰撞 / 259
14.9.2 为测试创建大子弹 / 260
14.9.3 生成新的外星人群 / 262
14.9.4 提高子弹的速度 / 263
14.9.5 重构update_bullets( ) / 263
14.10 游戏结束 / 264
14.10.1 检测外星人和飞船碰撞 / 264
14.10.2 响应碰撞 / 266
14.10.3 有外星人到达屏幕底端 / 269
14.10.4 游戏结束 / 270
14.11 确定应运行的部分 / 271
14.12 最终的游戏 / 272
14.12.1 invasion_alien.py / 272
14.12.2 game_functions.py / 273
14.12.3 game_settings.py / 275
14.12.4 game_ship.py / 275
14.12.5 game_alien.py / 276
14.12.6 game_stats.py / 277
14.12.7 bullet.py / 277
第15章 火柴人游戏
▼ 视频讲解
15.1 游戏所需图形 / 278
15.1.1 准备图形 / 279
15.1.2 画火柴人 / 280
15.1.3 画平台 / 282
15.1.4 画门 / 282
15.1.5 画背景 / 283
15.1.6 透明 / 284
15.2 开始开发游戏 / 284
15.2.1 创建Game类 / 284
15.2.2 创建坐标类 / 288
15.2.3 冲突检测 / 289
15.2.4 创建精灵类 / 292
15.2.5 添加平台类 / 293
15.3 创建火柴人 / 295
15.3.1 初始化火柴人 / 295
15.3.2 让火柴向左转和向右转 / 298
15.3.3 让火柴人跳跃 / 298
15.3.4 回顾一下 / 299
15.4 火柴人逃生 / 300
15.4.1 创建动画函数 / 300
15.4.2 测试火柴精灵 / 309
15.4.3 门 / 310
15.4.4 最终的游戏 / 312
第四部分 程序调试与数据库
第16章 Python基本文件操作
▼ 视频讲解
16.1 创建和打开文件 / 316
16.1.1 整个文件读取 / 318
16.1.2 文件路径 / 320
16.1.3 逐行读取 / 321
16.1.4 读取指定字符 / 322
16.1.5 打开文件时使用with语句 / 324
16.2 关闭文件 / 325
16.3 写入文件内容 / 325
16.3.1 写入空文件 / 325
16.3.2 写入多行 / 326
16.3.3 附加到文件 / 327
16.4 删除文件 / 328
16.5 文件重命名 / 329
第17章 程序调试
▼ 视频讲解
17.1 异常(错误) / 331
17.2 异常处理语句 / 333
17.2.1 try…except语句 / 333
17.2.2 try…except…else语句 / 335
17.2.3 try…except…finally语句 / 336
17.2.4 使用raise语句抛出异常 / 337
17.3 程序调试 / 338
17.3.1 用Python自带的IDLE进行程序调试 / 338
17.3.2 用assert语句调试程序 / 342
第18章 数据库基本操作
▼ 视频讲解
18.1 数据库编程接口 / 344
18.1.1 连接对象 / 344
18.1.2 游标对象 / 345
18.2 SQLite / 346
18.2.1 数据库文件创建 / 346
18.2.2 SQLite操作 / 347
18.3 使用MySQL / 351
18.3.1 下载安装MySQL / 351
18.3.2 安装PyMySQL / 355
18.3.3 数据库连接 / 355
18.3.4 数据表创建 / 356
18.3.5 数据表操作 / 357
Python由荷兰人Guido van Rossum于1989年发明。由于Python语言的简洁性、易读性以及可扩展性,Python已成为最受欢迎的程序语言之一。
本书内容设置均以用计算机解决问题、用Python编程思维实现功能为目标,通过四个部分,全面讲解了Python软件的安装、软件结构、常用模块等编程知识以及基于Python编程的多个游戏综合设计实例,同时也介绍了Python文本操作与数据库的有关技巧,不仅适于初学者入门,也利于Python开发者全面提高技能。
全书内容具有以下特点:
◆ 全彩印刷,大量开发实例引导,Python开发者轻松入门;
◆ 每个案例注重整体程序的简洁、实用,都经过反复调试、验证,可以直接用于开发实践;
◆ 编程进阶:综合开发实例循序渐进,全面提高开发者技能;
◆ 运维测试、文本与数据库操作,Python编程开发技能全涵盖;
◆ 二维码视频教学,详细讲解操作步骤、编程技巧和注意事项,如同老师直接指导。
本书由吴晶晶主编,洪立彬、刘杰、国勇副主编,参加编写的还有张伯虎、孔凡桂、张振文、曹振华、赵书芬、张伯龙、张胤涵、张校珩、曹祥、焦凤敏、张校铭、王桂英、蔺书兰,另外本书的编写得到了固安县智科美晟电子科技有限公司培训中心的大力支持,在此,对参与编写、校对以及提供资料等支持的作者表示诚挚的谢意!
因编者水平有限,书中不足之处难免,恳请广大读者批评指正(欢迎关注下方二维码及时反馈给我们)。
编者
评论
还没有评论。