第1 章 编程与我们的生活 1
1.1 为什么学编程 1
1.1.1 通过编程了解以科技为核心的世界 1
1.1.2 编程很有趣 1
1.1.3 编程能锻炼你的思维能力 2
1.2 为什么学Python 2
1.3 如何学好编程 2
1.4 计算机的长处和不足 2
1.5 下载并安装Python 3
1.5.1 Windows 系统 4
1.5.2 Mac 系统 5
1.6 在Shell 里编写代码 6
1.7 在编辑器里编写代码 8
1.8 五颜六色的代码 9
1.9 帮助我们的提示信息 9
第2 章 Python 编程初体验——发号施令 11
2.1 什么是编程 11
2.2 给小海龟精确地发号施令 12
2.2.1 指挥海龟画正方形 12
2.2.2 指挥海龟画八边形 14
2.3 省力气的循环 16
2.4 旋转的正方形 17
2.5 创造酷炫的图案 19
2.6 给点颜色看看 21
2.7 总结及课后练习 22
第3 章 跟机器交流 23
3.1 和计算机对话 23
3.2 输入和输出 28
3.3 跟人对话——注释 28
3.4 案例:笑话制造机 29
3.5 总结及课后练习 30
第4 章 数据的世界 32
4.1 变量 32
4.1.1 为什么要用变量 33
4.1.2 变量名 33
4.1.3 变量有多可“变” 34
4.2 算法通过处理数据解决问题 36
4.3 Python 数据类型及转换函数 36
4.3.1 常见数据类型 36
4.3.2 数据类型转换函数 37
4.3.3 数据分类的好处 38
4.4 数字 38
4.4.1 探索运算符 38
4.4.2 案例1:输出三位数中的每位数字 41
4.5 字符串 42
4.5.1 字符串常见处理 43
4.5.2 案例2:国家名简写 45
4.5.3 案例3:城市名加密 47
4.6 布尔值 48
4.6.1 布尔值及底层的意义 48
4.6.2 比较数据 49
4.6.3 布尔值与逻辑运算符的故事——小熊选照片 50
4.6.4 逻辑运算符 51
4.6.5 案例4:卡片通关挑战 52
4.7 总结及课后练习 57
第5 章 好好安排数据 58
5.1 安排数据的方式 58
5.2 列表 59
5.2.1 获取列表值 60
5.2.2 修改列表 62
5.2.3 二维列表 64
5.2.4 列表挑战练习 66
5.3 元组 67
5.4 字典 68
5.4.1 什么是字典 68
5.4.2 使用字典 69
5.4.3 案例:查询课程表 70
5.4.4 字典挑战练习 72
5.5 总结及课后练习 72
第6 章 条件判断——学会做决定 74
6.1 条件判断 74
6.1.1 生活中的判断 74
6.1.2 程序中的判断 74
6.2 if…else…语句 75
6.2.1 案例1:你的成绩合格吗 76
6.2.2 代码的位置 77
6.2.3 案例2:奇偶数判断 78
6.3 if…语句 79
案例3:今天你戴口罩了吗 79
6.4 if…elif…else…语句 80
案例4:判断正数、负数和零 81
6.5 条件判断总结 83
6.5.1 红绿灯导航系统 84
6.5.2 案例5:闰年计算器 84
6.6 条件判断应用 86
6.6.1 案例6:趣味掷骰子 86
6.6.2 案例7:心理测验 87
6.6.3 案例8:聊天机器人 91
6.7 总结及课后练习 97
第7 章 循环——让计算机重复工作 100
7.1 流程控制 100
7.2 什么是循环 101
7.3 for 循环 101
7.3.1 重复打印任务 101
7.3.2 案例1:敌军还有5 秒到达战场 102
7.3.3 for 循环语法 105
7.3.4 案例2:乘法口诀表 105
7.3.5 range()函数 107
7.3.6 for 循环练习 109
7.4 案例3:奶昔机器人 112
7.5 while 循环 113
7.5.1 while 循环的意义 113
7.5.2 比较while 和if 114
7.5.3 while 循环语法 115
7.5.4 案例4:加血道具的回血 115
7.5.5 无限循环和break 语句 117
7.6 案例5:扫地机器人的故事 119
7.7 案例6:自动驾驶程序的故事 121
7.8 案例7:猜数字游戏 123
7.9 总结及课后练习 127
第8 章 抽象函数——分而治之的学问 128
8.1 分而治之和抽象 128
8.2 函数 131
8.2.1 定义并调用函数 132
8.2.2 函数中代码的注意事项 132
8.2.3 带参数的函数 133
8.2.4 案例1:简单的函数练习 136
8.2.5 做事情的函数VS 返回值的函数 137
8.3 案例2:数学试卷机器人 140
8.3.1 策划数学试卷机器人 140
8.3.2 随机模块的用法 141
8.3.3 题目的函数 141
8.3.4 策划程序逻辑 144
8.3.5 完整的程序代码 145
8.4 递归函数的故事 146
8.4.1 阶乘与递归 146
8.4.2 无限递归 147
8.4.3 案例3:科赫曲线 148
8.4.4 案例4:科赫雪花 149
8.5 变量的作用域 150
8.6 总结及课后练习 151
第9 章 Python 库——让强大的Python 库帮忙 153
9.1 Python 模块概述 153
9.2 安装、卸载和使用Python 模块 154
9.2.1 安装与卸载Python 模块 154
9.2.2 Python 文档 157
9.3 random 模块 159
9.3.1 随机模块常见函数 159
9.3.2 随机模块函数练习 160
9.3.3 案例1:幸运大抽奖 161
9.4 时间模块和日期时间模块 163
9.4.1 时间模块 163
9.4.2 日期时间模块 166
9.5 webbrowser 模块 167
9.5.1 webbrowser 简介 167
9.5.2 案例2:天气机器人 167
9.6 操作文件 169
9.6.1 操作系统的os 模块 169
9.6.2 案例3:音乐倒计时 171
9.6.3 案例4:编写文档的docx 模块 172
9.7 总结及课后练习 174
第10 章 Tkinter 界面——有按钮的软件 175
10.1 GUI 与CUI 175
10.2 介绍Tkinter 框架 176
10.3 给窗体添加控件 177
10.4 让控件变漂亮 179
10.4.1 为控件设置属性的方法 179
10.4.2 控件的常用属性 180
10.4.3 使用config 配置属性 182
10.5 让窗体里的东西动起来 183
10.5.1 Tkinter 里的事件 184
10.5.2 响应事件中的属性 185
10.6 案例1:绘图软件 187
10.6.1 制作绘图软件1 188
10.6.2 制作绘图软件2 192
10.6.3 制作绘图软件3 194
10.7 案例2:编写桌面备忘录 197
10.8 总结及课后练习 198
第11 章 密码的奥妙——众目睽睽之下的悄悄话 199
11.1 打胜仗要靠算法 199
11.2 案例1:倒着说话——调转密码 200
11.2.1 调转密码介绍 200
11.2.2 编写调转密码 200
11.2.3 编写调转密码窗口 201
11.3 案例2:绕小弯说话——凯撒密码 202
11.3.1 凯撒密码介绍 202
11.3.2 编写凯撒密码 203
11.3.3 编写凯撒密码窗口 206
11.3.4 破解凯撒密码 207
11.4 案例3:混乱着说话——打乱替换密码 207
11.4.1 打乱替换密码介绍 207
11.4.2 编写打乱替换密码 208
11.5 案例4:绕大弯说话——维吉尼亚密码 210
11.5.1 维吉尼亚密码介绍 210
11.5.2 编写维吉尼亚密码 211
11.6 案例5:靠计数破译密码 212
11.7 总结及课后练习 215
第12 章 二进制数的世界 217
12.1 二进制数是什么 217
12.2 二进制数转十进制数 218
12.3 十进制数转二进制数 220
12.4 图片都是数字 221
12.5 字母都是数字 222
12.6 总结及课后练习 224
第13 章 潜水钟与蝴蝶——用计算性思维解决问题 225
13.1 潜水钟与蝴蝶的故事 225
13.1.1 第一次尝试——眨眼次数代表的字母 226
13.1.2 第二次尝试——二分搜索 226
13.1.3 持续地尝试 228
13.2 编写程序为身边的人解决问题 229
· · · · · · (
收起)