转载至: https://www.52pojie.cn/forum.php?mod=viewthread&tid=860349
下载链接: 点我一键跳转到 下载链接
下载声明: 本资料仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版!
本书作者是一名自学成才的程序员,经过一年的自学,掌握了编程技能并在eBay找到了一份软件工程师的工作。本书是作者结合个人经验写作而成,旨在帮助读者从外行成长为一名专业的Python程序员。
本书包括5部分内容:第一部分(第1~11章)介绍了编程基础知识,以及函数、容器、字符串、循环和模型等概念;第二部分(第12~15章)介绍了编程范式和面向对象编程等知识;第三部分(第16~20章)介绍了Bash、正则表达式、包管理器和版本控制等编程工具方面的知识;第四部分(第21~22章)主要涉及数据结构和算法方面的知识;第五部分(第23~27章)则是关于求职与团队协作的内容。
本书可以满足几乎所有想要学习编程的初学者。本书适合高中、大学阶段想要自学编程的学生,以及其他行业想入门编程的人,同时也适合作为编程入门的培训教材。
第 一部分 编程简介
第 1章 概述 3
1.1 本书的结构 4
1.2 从终点出发 4
1.3 你不是一个人在战斗 5
1.4 自学的优势 5
1.5 为什么应该编程 5
1.6 坚持不懈 6
1.7 本书的格式 6
1.8 本书使用的技术 6
1.9 术语表 7
1.10 挑战练习 7
第 2章 起步 9
2.1 什么是编程 9
2.2 什么是Python 10
2.3 安装Python 10
2.4 问题解答 11
2.5 交互式shell 11
2.6 保存程序 12
2.7 运行示例程序 12
2.8 术语表 13
2.9 挑战练习 13
第3章 编程概论 15
3.1 示例 15
3.2 注释 16
3.3 打印 17
3.4 代码行 17
3.5 关键字 18
3.6 间距 18
3.7 数据类型 19
3.8 常量和变量 21
3.9 语法 24
3.10 错误与异常 25
3.11 算术操作符 26
3.12 比较操作符 29
3.13 逻辑操作符 31
3.14 条件语句 34
3.15 语句 38
3.16 术语表 40
3.17 挑战练习 42
第4章 函数 43
4.1 表达概念 43
4.2 函数 44
4.3 定义函数 44
4.4 内置函数 47
4.5 复用函数 49
4.6 必选及可选参数 51
4.7 作用域 52
4.8 异常处理 55
4.9 文档字符串 58
4.10 有需要才使用变量 58
4.11 术语表 59
4.12 挑战练习 59
第5章 容器 61
5.1 方法 61
5.2 列表 62
5.3 元组 66
5.4 字典 69
5.5 容器嵌套容器 72
5.6 术语表 76
5.7 挑战练习 76
第6章 字符串操作 77
6.1 三引号字符串 77
6.2 索引 77
6.3 字符串是不可变的 79
6.4 字符串拼接 79
6.5 字符串乘法 80
6.6 改变大小写 80
6.7 格式化 80
6.8 分割 82
6.9 连接 82
6.10 去除空格 83
6.11 替换 84
6.12 查找索引 84
6.13 in关键字 85
6.14 字符串转义 85
6.15 换行符 86
6.16 切片 87
6.17 术语表 88
6.18 挑战练习 89
第7章 循环 91
7.1 for循环 91
7.2 range函数 95
7.3 while循环 95
7.4 break语句 96
7.5 continue语句 98
7.6 嵌套循环 99
7.7 术语表 100
7.8 挑战练习 101
第8章 模块 103
8.1 导入内置模块 103
8.2 导入其他模块 105
8.3 术语表 107
8.4 挑战练习 107
第9章 文件 109
9.1 写文件操作 109
9.2 自动关闭文件 110
9.3 读取文件 111
9.4 CSV文件 112
9.5 术语表 114
9.6 挑战练习 114
第 10章 综合练习 115
10.1 Hangman 116
10.2 挑战练习 119
第 11章 练习 121
11.1 阅读 121
11.2 其他资源 121
11.3 寻求帮助 121
第二部分 面对对象编程简介
第 12章 编程范式 125
12.1 状态 125
12.2 过程式编程 125
12.3 函数式编程 127
12.4 面向对象编程 128
12.5 术语表 133
12.6 挑战练习 134
第 13章 面向对象编程的
四大支柱 135
13.1 封装 135
13.2 抽象 138
13.3 多态 138
13.4 继承 140
13.5 组合 143
13.6 术语表 144
13.7 挑战练习 144
第 14章 深入面向对象编程 145
14.1 类变量与实例变量 145
14.2 魔法方法 147
14.3 is 149
14.4 术语表 150
14.5 挑战练习 150
第 15章 综合练习 151
15.1 卡牌 151
15.2 牌堆 153
15.3 玩家 154
15.4 游戏 155
15.5 战争 157
第三部分 编程工具简介
第 16章 Bash 163
16.1 跟随练习 163
16.2 找到Bash 164
16.3 命令 164
16.4 最近命令 165
16.5 相对路径与绝对路径 165
16.6 导航 166
16.7 旗标 168
16.8 隐藏文件 169
16.9 管道 169
16.10 环境变量 169
16.11 用户 170
16.12 了解更多 171
16.13 术语表 171
16.14 挑战练习 172
第 17章 正则表达式 173
17.1 初始配置 173
17.2 简单匹配 174
17.3 匹配起始位置 176
17.4 匹配多个字符 177
17.5 匹配数字 178
17.6 重复 179
17.7 转义 181
17.8 正则工具 182
17.9 术语表 182
17.10 挑战练习 183
第 18章 包管理器 185
18.1 包 185
18.2 pip 185
18.3 虚拟环境 188
18.4 术语表 188
18.5 挑战练习 188
第 19章 版本控制 189
19.1 代码仓库 189
19.2 入门 190
19.3 推送和拉取 191
19.4 推送示例 192
19.5 拉取示例 195
19.6 回退版本 195
19.7 diff 196
19.8 下一步 197
19.9 术语表 197
19.10 挑战练习 198
第 20章 融会贯通 199
20.1 HTML 199
20.2 爬取Google新闻 200
20.3 术语表 204
20.4 挑战练习 204
第四部分 计算机科学简介
第 21章 数据结构 207
21.1 数据结构 207
21.2 栈 207
21.3 使用栈逆转字符串 210
21.4 队列 211
21.5 购票队列 213
21.6 术语表 215
21.7 挑战练习 216
第 22章 算法 217
22.1 FizzBuzz 217
22.2 顺序搜索 218
22.3 回文词 219
22.4 变位词 220
22.5 计算字母频数 220
22.6 递归 221
22.7 术语表 223
22.8 挑战练习 224
第五部分 找到工作
第 23章 最佳编程实践 227
23.1 写代码是最后的手段 227
23.2 DRY 227
23.3 正交性 227
23.4 每个数据都只应保存在
一处 228
23.5 函数只做一件事 228
23.6 若耗费时间过长,你的做法
很可能就是错的 228
23.7 第 一次就要用最佳的方法
完成 228
23.8 遵循惯例 229
23.9 使用强大的IDE 229
23.10 记录日志 230
23.11 测试 230
23.12 代码审查 230
23.13 安全 231
23.14 术语表 232
第 24章 第 一份编程工作 233
24.1 选择方向 233
24.2 积累初期经验 234
24.3 拿到面试机会 234
24.4 面试 234
24.5 面试技巧 235
第 25章 团队协作 237
25.1 掌握基础 237
25.2 提问前请先搜索 237
25.3 修改代码 238
25.4 冒名顶替综合征 238
第 26章 更多学习资料 239
26.1 经典书籍 239
26.2 在线课堂 239
26.3 骇客新闻 240
第 27章 下一步 241
27.1 找到导师 241
27.2 加深理解 241
27.3 其他建议 242