第1章 安裝Python 1
1.1 下載和安裝Python 1
1.2 啓動IDLE 2
1.3 如何使用本書 3
1.4 尋求在綫幫助 4
第2章 交互式shell 6
2.1 一些簡單的數學知識 6
2.2 計算錶達式 7
2.4 本章小結 12
第3章 編寫程序 13
3.1 字符串 13
3.2 字符串連接 14
3.3 在IDLE的文件編輯器中編寫程序 14
3.4 Hello World! 15
3.5 保存程序 16
3.6 打開保存過的程序 16
3.7 “Hello World”程序如何工作 18
3.8 變量名稱 20
3.9 本章小結 21
第4章 “猜數字”遊戲 22
4.1 “猜數字”遊戲的運行示例 22
4.2 “猜數字”遊戲的源代碼 23
4.3 import語句 24
4.4 random.randint()函數 25
4.5 循環 26
4.6 語句塊 26
4.7 布爾數據類型 27
4.8 比較操作符 28
4.9 條件 28
4.10 =和==的區彆 30
4.11 while循環語句 30
4.12 使用int()函數、float()函數、str()
函數和bool()函數來轉換值 31
4.14 if語句 33
4.15 用break語句提早離開循環 34
4.16 流程控製語句 36
4.17 本章小結 36
第5章 Jokes 38
5.1 用好print()函數 38
5.2 Jokes遊戲的運行示例 38
5.3 Jokes遊戲的源代碼 38
5.4 轉義字符 39
5.5引號和雙引號 40
5.6 print()的end關鍵字參數 41
5.7 本章小結 42
第6章 Dragon Realm 43
6.1 函數 43
6.2 如何玩“Dragon Realm” 43
6.3 Dragon Realm遊戲的運行示例 44
6.4 Dragon Realm的源代碼 44
6.5 def語句 46
6.6 布爾操作符 47
6.7 返迴值 51
6.8 全局作用域和局部作用域 51
6.9 形參(parameter) 53
6.10 設計遊戲 56
6.11 本章小結 57
第7章 使用調試器 58
7.1 Bug! 58
7.2 調試器 59
7.3 單步執行 61
7.4 查找Bug 63
7.5 斷點 66
7.6 使用斷點的示例 67
7.7 本章小結 68
第8章 流程圖 69
8.1 如何玩Hangman 69
8.2 Hangman的運行示例 69
8.3 ASCII字符圖 71
8.4 用流程圖來設計一個程序 71
8.5 生成流程圖 73
8.6 本章小結 79
第9章 Hangman 81
9.1 Hangman的源代碼 81
9.2 多行字符串 86
9.3 常量 86
9.4 列錶 86
9.5 方法 91
9.6 字符串方法lower()和upper() 91
9.7 列錶方法reverse()和append() 92
9.8 列錶方法split() 93
9.9 range()函數和list()函數 95
9.10 for循環 96
9.11 切片 98
9.12 elif (“Else If”)語句 101
9.13 本章小結 108
第10章 Hangman擴展 109
10.1 字典 110
10.2 random.choice()函數 113
10.3 多變量賦值 114
10.4 本章小結 116
第11章 Tic Tac Toe 117
11.1 Tic Tac Toe的運行示例 117
11.2 Tic Tac Toe的源代碼 118
11.3 設計程序 123
11.4 遊戲AI 124
11.5 引用 129
11.6 短路求值 137
11.7 None值 140
11.8 本章小結 146
第12章 Bagels 147
12.1 Bagels的運行示例 147
12.2 Bagels的源代碼 148
12.3 random.shuffle()函數 151
12.4 復閤賦值操作符 153
12.5 列錶方法sort() 154
12.6 字符串方法join() 155
12.7 字符串插值 157
12.8 本章小結 160
第13章 笛卡爾坐標 161
13.1 網格和笛卡爾坐標 161
13.2 負數 163
13.3 數學技巧 164
13.4 絕對值和abs()函數 166
13.5 計算機屏幕的坐標係 167
13.6 本章小結 167
第14章 Sonar Treasure Hunt 168
14.1 Sonar Treasure Hunt的
運行示例 169
14.2 Sonar Treasure Hunt的源代碼 173
14.3 設計程序 179
14.4 找到最近的藏寶箱的算法 185
14.5 列錶方法remove() 187
14.6 本章小結 195
第15章 Caesar Cipher 196
15.1 密碼學 196
15.2 凱撒密碼 197
15.3 ASCII碼以及用數字錶示字母 198
15.4 函數chr()和ord() 199
15.5 凱撒密碼的運行示例 200
15.6 Caesar Cipher的源代碼 201
15.7 代碼如何工作 202
15.8 字符串方法isalpha() 204
15.9 字符串方法isupper()和
islower() 205
15.10 暴力破解 207
15.11 本章小結 209
第16章 Reversi 210
16.1 Reversi的運行示例 211
16.2 Reversi的源代碼 215
16.3 代碼如何工作 223
16.4 bool()函數 231
16.5 本章小結 244
第17章 Reversi AI模擬 245
17.1 讓計算機和自己下棋 245
17.2 百分數 250
17.3 round()函數 251
17.4 AISim2.py的運行示例 252
17.5 比較不同的AI算法 252
17.6 本章小結 259
第18章 圖形和動畫 260
18.1 安裝Pygame 260
18.2 Pygame中的Hello World 261
18.3 Hello World的源代碼 261
18.4 運行Hello World程序 263
18.5 元組 264
18.6 RGB顔色 265
18.7 字體和pygame.font.SysFont()
函數 266
18.8 屬性 267
18.9 構造函數 269
18.10 Pygame的繪製函數 269
18.11 事件和遊戲循環 272
18.12 動畫 273
18.13 Animation程序的源代碼 274
18.14 Animation程序如何工作 276
18.15 運行程序循環 279
18.16 本章小結 282
第19章 碰撞檢測與鼠標/鍵盤的輸入 284
19.1 Collision Detection程序的
源代碼 284
19.2 Collision Detection算法 288
19.3 當遍曆一個列錶的時候,
不要修改該列錶 292
19.4 鍵盤輸入程序的源代碼 293
19.5 colliderect()方法 300
19.6 本章小結 301
第20章 聲音和圖像 302
20.1 聲音文件和圖像文件 303
20.2 精靈和聲音程序 303
20.3 Sprites and Sounds程序的
源代碼 304
20.4 pygame.transform.scale()函數 308
20.5 本章小結 311
第21章 Dodger 312
21.1 迴顧Pygame的基本數據類型 312
21.2 Dodger的源代碼 313
21.3 全屏模式 322
21.4 遊戲循環 325
21.5 事件處理 325
21.6 move_ip()方法 328
21.7 pygame.mouse.set_pos()函數 331
21.8 修改Dodger遊戲 335
21.9 本章小結 335
· · · · · · (
收起)