笨办法学 Python
Release 2.0
Zed A. Shaw, Wang Dingwei
May 06, 2012
运维技术书籍免费下载 https://www.linuxprobe.com
运维技术书籍免费下载 https://www.linuxprobe.com
CONTENTS
笨办法
读和写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
注重细节 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
发现不同 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
不要复制粘贴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
对于坚持练习的一点提示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
给“小聪明”们的警告 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
许可协议 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
特别感谢 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
0:
Mac OSX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Windows
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
给新手的告诫 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
5
5
6
6
6
6
7
8
8
9
9
10
13
15
17
19
21
23
23
24
i
运维技术书籍免费下载 https://www.linuxprobe.com
3: 学
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4: (variable)
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6: (string)
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
26
27
29
30
30
33
34
34
35
36
36
37
38
38
39
39
40
41
41
42
43
44
44
47
48
48
49
49
ii
运维技术书籍免费下载 https://www.linuxprobe.com
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13:
等一下!“功能”还有另外一个名字 . . . . . . . . . . . . . . . . . . . . . . . . .
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
50
51
52
52
53
55
56
56
57
58
59
61
62
63
65
66
67
69
71
71
73
74
75
77
78
78
81
82
83
iii
运维技术书籍免费下载 https://www.linuxprobe.com
22: 学
你学到的东西 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23:
24:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25:
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26:
85
85
87
89
90
91
93
94
96
97
27:
99
逻辑术语 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
真值表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
28:
103
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
29: (if)
107
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
30: Else If
109
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
31:
113
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
32:
117
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
iv
运维技术书籍免费下载 https://www.linuxprobe.com
33: While
121
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
34:
125
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
35:
129
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
36:
133
If 语句的规则 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
循环的规则 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
调试 (debug) 的小技巧 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
家庭作业 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
37:
137
Keywords(关键字) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
字符串转义序列 (Escape Sequences)
. . . . . . . . . . . . . . . . . . . . . . . . . 139
字符串格式化 (String Formats) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
操作符号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
38:
143
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
39:
145
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
40: ,
149
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
41: Percal 25 (Gothons)
153
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
v
运维技术书籍免费下载 https://www.linuxprobe.com
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
42:
163
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
43:
173
44:
175
函数的风格 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
类的风格 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
代码风格 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
好的注释 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
为你的游戏评分 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
45:
179
写成代码是什么样子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
46:
185
骨架内容 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
测试你的配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
使用这个骨架 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
小测验 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
47:
191
撰写测试用例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
测试指南 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
你应该看到的结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
48:
195
我们的游戏语汇 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
你应该测试的东西 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
设计的技巧 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
加分习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
49:
vi
201
运维技术书籍免费下载 https://www.linuxprobe.com