本书分为6章,系统全面地介绍了Python语言的基础语法、基本数据类型与组合数据类型。基本数据类型包括整数、浮点数、字符串、布尔值和空值;组合数据类型包括序列类型(字符串、列表和元组)、字典类型和集合类型。
本书包括IT行业的14个故事与话题,例如伊莉莎程序、身份证的数字化、计算机加密算法等;设计了110个案例,例如猜数游戏、绘制小花朵、计算机造句等;列举了4个算法分析的案例,分别是凯撒加密法、换位加密法、英文小说的词频统计以及字典加密器。
1. 14个IT行业的趣味故事,让孩子轻松走进编程的世界;
2. 110个案例,提供代码及视频资源,调试运行一目了然;
3. 44个课后习题,附带参考答案,巩固练习,举一反三;
4. 6章配套PPT文件,重点内容全覆盖,培训上课好帮手。
1.14个IT行业的趣味故事,让孩子轻松走进编程的世界;
2.110个案例,提供代码及视频资源,调试运行一目了然;
3.44个课后习题,附带参考答案,巩固练习,举一反三;
4.6章配套PPT文件,重点内容全覆盖,培训上课好帮手。
张霞,现就职于深圳职业技术学院人工智能学院,副教授,长期从事Java和Python编程语言教学工作。作为主讲教师,参加了校精品课程、省部级资源共享课、国家精品课程的教学工作;作为软件专业骨干教师,连续多年为企业和全国高校教师进行IT技术培训。有软件著作权3项,发表了多篇教研论文和科研核心期刊论文,编写了Java、Android、Python等编程类教材6本。曾获全国教育教学信息化大奖赛二等奖,广东省计算机教育软件评审活动二等奖。所指导的学生曾获“蓝桥杯”大赛国家三等奖、广东省一等奖,以及全国高职高专“发明杯”大学生创新创业大赛铜奖等奖项。
刘颖,现就职于深圳职业技术学院人工智能学院,讲师,负责多门专业课程的教学工作,广受学生好评。曾发表多篇与高职教育学有关的教研论文,其中《浅析中国高职教育的部分发展问题及解决办法》获得2004年广东省高教学会科研成果三等奖。
第1章 打开编程之门 1
1.1 为什么要学编程 1
1.1.1 什么是编程 1
1.1.2 为什么要学Python编程 3
1.2 Python语言的诞生 4
1.2.1 Python语言的由来 4
1.2.2 Python应用的流行领域 4
1.3 创建Python基础开发环境 6
1.3.1 安装Python 6
1.3.2 Python解释器 9
1.3.3 交互模式 9
1.3.4 代码编辑器 10
1.4 编写Python程序 12
1.4.1 编写.py程序 12
1.4.2 查看日期和时间 13
1.4.3 定位和修复错误 14
1.4.4 更多Python开发工具 16
1.4.5 Python在线帮助文档 18
1.5 你学到了什么 19
第 2章 有趣的人机对话与猜数游戏 20
2.1 有趣的人机对话 20
2.1.1 编程IPO方法 20
2.1.2 人机对话程序 21
2.1.3 程序背后的故事—ELIZA 23
2.1.4 变量 24
2.1.5 缩进 26
2.1.6 字符串类型 27
2.1.7 替换函数replace() 28
2.1.8 数值类型 29
2.1.9 输出函数print() 31
2.1.10 输入函数input() 32
2.1.11 输出的格式问题 33
2.1.12 while循环结构 34
2.2 请输入密码 39
2.2.1 程序背后的故事—计算机密码 39
2.2.2 if分支语句 40
2.2.3 多分支结构 41
2.2.4 表达式 43
2.3 猜数游戏 45
2.3.1 猜数游戏程序 46
2.3.2 程序背后的故事—随机数 47
2.3.3 再谈while循环 48
2.4 相关知识阅读 49
2.4.1 字符编码 49
2.4.2 字符串转义符 50
2.4.3 布尔值 51
2.4.4 注释 51
2.4.5 常见的打字错误 52
2.4.6 让代码尽可能简单 52
2.5 你学到了什么 53
第3章 一切皆可运算 54
3.1 看看身份证 54
3.1.1 身份证号码 54
3.1.2 程序背后的故事—身份证的数字化 55
3.1.3 序列 55
3.1.4 索引 55
3.1.5 切片 57
3.2 输出漂亮的唐诗 58
3.2.1 程序背后的故事—一切皆可运算 59
3.2.2 成员运算符in 60
3.2.3 for循环 60
3.2.4 3个引号 62
3.2.5 函数str() 62
3.2.6 比较字符大小 64
3.3 字母替代游戏 65
3.3.1 程序背后的故事—凯撒加密法 66
3.3.2 加密算法 68
3.3.3 解密算法 69
3.3.4 查找函数find() 69
3.3.5 解密程序 70
3.3.6 暴力破译法 70
3.4 相关语法阅读 71
3.4.1 空格处理 71
3.4.2 常用字母转换 71
3.4.3 对应的字母判断方法 72
3.4.4 字符串格式化 72
3.5 你学到了什么 72
第4章 列表,还是列表 74
4.1 解同余式 74
4.1.1 程序背后的故事—韩信点兵 74
4.1.2 计数函数range() 75
4.1.3 列表类型 77
4.1.4 遍历列表 81
4.1.5 循环嵌套 82
4.2 评委打分 84
4.2.1 程序背后的故事—计算机模拟 86
4.2.2 列表排序 86
4.2.3 家人与朋友列表 89
4.2.4 神奇的食物列表 91
4.2.5 有趣的计算机造句 92
4.3 换位加密 93
4.3.1 换位加密算法 95
4.3.2 列表的运算符 96
4.3.3 连接函数join() 97
4.3.4 math库 98
4.3.5 换位解密算法 99
4.3.6 程序背后的故事—加密算法 100
4.4 相关知识阅读 101
4.4.1 序列类型 101
4.4.2 元组 102
4.5 你学到了什么 102
第5章 程序也会搭积木 103
5.1 绘制小花朵 103
5.1.1 程序背后的故事—Python标准库 104
5.1.2 turtle绘图库 105
5.1.3 调用函数绘制小花朵 106
5.1.4 定义函数与调用函数 107
5.1.5 函数的参数传递 109
5.1.6 蟒蛇绘制 110
5.2 向列表中的每个人发出问候 112
5.2.1 传递一个列表作为参数 113
5.2.2 参数的默认值 114
5.2.3 有返回值的函数 115
5.2.4 全局变量和局部变量 116
5.3 绘制科赫雪花 117
5.3.1 绘制科赫雪花 118
5.3.2 程序背后的故事—分形几何学 119
5.3.3 递归函数 120
5.3.4 绘制分型树 121
5.4 程序模块化 123
5.4.1 制作模块文件 123
5.4.2 导入模块文件 124
5.5 相关知识阅读 125
5.5.1 匿名函数lambda() 125
5.5.2 将lambda()函数赋值给一个变量 126
5.6 你学到了什么 127
第6章 字典是个宝 128
6.1 字典 128
6.1.1 创建字典 129
6.1.2 删除字典 131
6.1.3 字典背后—键值对与数据结构 132
6.1.4 遍历字典 135
6.1.5 排序问题 138
6.1.6 字典和列表对比 144
6.2 文件的读与写 145
6.2.1 文件的打开与读写 146
6.2.2 pickle库与数据存储 150
6.2.3 Python的异常处理 151
6.3 英文小说的词频统计 154
6.3.1 词频统计的IPO描述 154
6.3.2 词频统计的算法 155
6.3.3 词频统计的完整程序 156
6.3.4 统计人物出场次数 157
6.4 创建一个加密字典 158
6.4.1 创建自己的加密器 159
6.4.2 用字典实现加密算法 160
6.4.3 解密和解密字典 160
6.4.4 加密一个文本文件 161
6.4.5 程序背后的故事—算法与图灵奖 162
6.5 爬虫之自制英汉字典 163
6.5.1 创建一个单词字典 163
6.5.2 爬虫的背后—大受欢迎的第三方库 164
6.5.3 第三方库的安装 166
6.5.4 爬虫之数据提取自动化 167
6.5.5 爬虫之数据存储自动化 171
6.6 集合类型 173
6.6.1 组合数据类型 173
6.6.2 集合 174
6.7 你学到了什么 178
附录A Python关键字和内置函数 179
附录B 习题参考答案 181
附录C Python科学绘图样本 199