python編程初學(xué)者指南全書共12章,內(nèi)容淺顯易懂,書中的每一個(gè)章節(jié)都會(huì)用一個(gè)完整的游戲來演示其中的關(guān)鍵知識(shí)點(diǎn),最后都會(huì)對該章的知識(shí)點(diǎn)進(jìn)行小結(jié),還會(huì)給出一些小練習(xí)讓你試試身手。東坡小編為大家分享python編程初學(xué)者指南中文版電子書籍,點(diǎn)擊下面的地址即可免費(fèi)獲取。
《Python編程初學(xué)者指南》內(nèi)容淺顯易懂,示例輕松活潑,是國際暢銷的Python初學(xué)者教程,適合對Python感興趣的初級(jí)和中級(jí)讀者學(xué)習(xí)參考。
python編程初學(xué)者指南目錄
第1章 啟程:Game Over程序 1
1.1 剖析Game
Over程序 1
1.2 Python簡介 2
1.2.1 Python易于使用 3
1.2.2 Python功能強(qiáng)大 3
1.2.3 Python是面向?qū)ο蟮摹?
1.2.4 Python是一種“膠水”語言 4
1.2.5 Python所不在 4
1.2.6 Python有一個(gè)強(qiáng)大的社區(qū) 4
1.2.7 Python是免費(fèi)的、開源的 4
1.3 在Windows上設(shè)置Python 4
1.4 在其他操作系統(tǒng)上設(shè)置Python 5
1.5 IDLE簡介 6
1.5.1 通過交互模式進(jìn)行編程 6
1.5.2 通過腳本模式進(jìn)行編程 9
1.6 回到Game
Over程序 11
1.6.1 使用注釋 12
1.6.2 使用空行 13
1.6.3 打印字符串 13
1.6.4 等待用戶 13
1.7 小結(jié) 14
第2章 類型、變量以及簡單I/O:Useless Trivia程序 15
2.1 Useless
Trivia程序簡介 15
2.2 使用引號(hào)和字符串 16
2.2.1 Game Over
2.0程序簡介 16
2.2.2 在字符串內(nèi)部使用引號(hào) 17
2.2.3 打印輸出多個(gè)值 18
2.2.4 為print指定結(jié)束字符串 19
2.2.5 創(chuàng)建三重引號(hào)字符串 19
2.3 使用轉(zhuǎn)義序列和字符串 20
2.3.1 Fancy
Credits程序簡介 20
2.3.2 前進(jìn)一個(gè)制表符位 21
2.3.3 打印反斜杠 22
2.3.4 插入換行符 22
2.3.5 插入引號(hào) 22
2.3.6 觸發(fā)系統(tǒng)蜂鳴器 23
2.4 字符串的連接和重復(fù) 23
2.4.1 Silly
Strings程序簡介 24
2.4.2 字符串的連接 25
2.4.3 使用行繼續(xù)符 25
2.4.4 字符串的重復(fù) 25
2.5 使用數(shù)字 26
2.5.1 Word
Problems程序簡介 26
2.5.2 理解數(shù)值類型 27
2.5.3 使用數(shù)學(xué)運(yùn)算符 27
2.6 理解變量 28
2.6.1 Greeter程序簡介 29
2.6.2 創(chuàng)建變量 29
2.6.3 使用變量 30
2.6.4 變量命名 30
2.7 獲取輸入 31
2.7.1 Personal
Greeter程序簡介 31
2.7.2 使用input()函數(shù) 32
2.8 使用字符串方法 33
2.8.1 Quotation
Manipulation程序簡介 34
2.8.2 通過字符串方法創(chuàng)建新字符串 35
2.9 使用正確的類型 37
2.9.1 Trust
Fund Buddy-Bad程序簡介 37
2.9.2 跟蹤邏輯錯(cuò)誤 38
2.10 轉(zhuǎn)換值的類型 39
2.10.1 Trust Fund
Buddy-Good程序簡介 39
2.10.2 將字符串轉(zhuǎn)換成整數(shù) 40
2.10.3 使用復(fù)合賦值運(yùn)算符 41
2.11 回到Useless
Trivia程序 42
2.11.1 創(chuàng)建初始注釋 42
2.11.2 獲取用戶輸入 43
2.11.3 打印小寫和大寫形式的name 43
2.11.4 打印name五次 43
2.11.5 計(jì)算秒數(shù) 44
2.11.6 計(jì)算moon_weight和sun_weight 44
2.11.7 等一等用戶 44
2.12 小結(jié) 44
第3章 條件分支、while循環(huán)以及程序策劃:Guess My Number游戲 46
3.1 Guess My
Number游戲簡介 46
3.2 生成隨機(jī)數(shù) 47
3.2.1 Craps
Roller程序簡介 47
3.2.2 引入random模塊 48
3.2.3 使用randint()函數(shù) 49
3.2.4 使用randrange()函數(shù) 49
3.3 使用if語句 49
3.3.1 Password程序簡介 50
3.3.2 觀察if語句 51
3.3.3 創(chuàng)建條件 51
3.3.4 理解比較運(yùn)算符 52
3.3.5 通過縮進(jìn)創(chuàng)建代碼塊 53
3.3.6 構(gòu)建自己的if語句 53
3.4 使用else子句 53
3.4.1 Granted
or Denied程序簡介 54
3.4.2 觀察else子句 55
3.5 使用elif子句 55
3.5.1 Mood
Computer程序簡介 56
3.5.2 觀察elif子句 58
3.6 創(chuàng)建while循環(huán) 59
3.6.1 Three-Year-Old
Simulator程序簡介 60
3.6.2 觀察while循環(huán) 60
3.6.3 初始化哨兵變量 61
3.6.4 檢查哨兵變量 61
3.6.5 更新哨兵變量 62
3.7 避免限循環(huán) 62
3.7.1 Losing
Battle程序簡介 62
3.7.2 跟蹤程序 64
3.7.3 創(chuàng)建可以變成False的條件 64
3.8 將值用作條件 65
3.8.1 Maitre
D’程序簡介 66
3.8.2 把值解釋為True或False 67
3.9 故意創(chuàng)建限循環(huán) 67
3.9.1 Finicky
Counter程序簡介 68
3.9.2 通過break語句退出循環(huán) 68
3.9.3 通過continue語句跳回循環(huán)的開頭 69
3.9.4 理解break和continue的使用場景 69
3.10 使用復(fù)合條件 69
3.10.1 Exclusive
Network程序簡介 70
3.10.2 理解邏輯運(yùn)算符not 72
3.10.3 理解邏輯運(yùn)算符and 73
3.10.4 理解邏輯運(yùn)算符or 74
3.11 規(guī)劃程序 74
3.11.1 利用偽碼編制算法 75
3.11.2 逐步對算法進(jìn)行提煉 75
3.12 回到Guess
My
Number游戲 76
3.12.1 程序規(guī)劃 76
3.12.2 創(chuàng)建初始注釋塊 77
3.12.3 引入random模塊 77
3.12.4 游戲說明 77
3.12.5 設(shè)置初始值 77
3.12.6 創(chuàng)建猜測循環(huán) 78
3.12.7 向玩家表示祝賀 78
3.12.8 等待玩家退出 78
3.13 小結(jié) 78
第4章 for循環(huán)、字符串以及元組:Word Jumble游戲 80
4.1 Word
Jumble游戲簡介 80
4.2 使用for循環(huán) 81
4.2.1 Loopy
String程序簡介 81
4.2.2 理解for循環(huán) 82
4.2.3 創(chuàng)建for循環(huán) 83
4.3 通過for循環(huán)進(jìn)行計(jì)數(shù) 83
4.3.1 Counter程序簡介 83
4.3.2 前向計(jì)數(shù) 84
4.3.3 按五為單位進(jìn)行計(jì)數(shù) 85
4.3.4 后向計(jì)數(shù) 85
4.4 對字符串使用序列運(yùn)算符和函數(shù) 86
4.4.1 Message
Analyzer程序簡介 86
4.4.2 使用len()函數(shù) 87
4.4.3 使用in運(yùn)算符 87
4.5 對字符串進(jìn)行索引 88
4.5.1 Random
Access程序簡介 88
4.5.2 使用正的位置編號(hào) 89
4.5.3 使用負(fù)的位置編號(hào) 90
4.5.4 隨機(jī)訪問字符串元素 91
4.6 理解字符串的不變性 92
4.7 構(gòu)建新字符串 93
4.7.1 No
Vowels程序簡介 93
4.7.2 創(chuàng)建常量 94
4.7.3 通過已有的字符串創(chuàng)建新字符串 95
4.8 對字符串進(jìn)行切片操作 96
4.8.1 Pizza
Slicer程序簡介 96
4.8.2 理解None 97
4.8.3 理解切片 98
4.8.4 創(chuàng)建切片 98
4.8.5 使用切片速記法 99
4.9 創(chuàng)建元組 99
4.9.1 Hero’s
Inventory程序簡介 100
4.9.2 創(chuàng)建空元組 101
4.9.3 把元組當(dāng)作條件 101
4.9.4 創(chuàng)建帶有元素的元組 102
4.9.5 打印元組 102
4.9.6 遍歷元組中的元素 102
4.10 使用元組 103
4.10.1 Hero’s
Inventory
2.0程序簡介 103
4.10.2 準(zhǔn)備工作 104
4.10.3 對元組使用len()函數(shù) 104
4.10.4 對元組使用in運(yùn)算符 104
4.10.5 對元組進(jìn)行索引 105
4.10.6 對元組進(jìn)行切片 105
4.10.7 理解元組的不變性 106
4.10.8 元組的連接操作 106
4.11 回到Word
Jumble游戲 107
4.11.1 準(zhǔn)備工作 107
4.11.2 對題目的創(chuàng)建部分進(jìn)行設(shè)計(jì) 107
4.11.3 創(chuàng)建空的題目字符串 108
4.11.4 設(shè)置循環(huán) 108
4.11.5 產(chǎn)生word中的隨機(jī)位置 108
4.11.6 創(chuàng)建新版的jumble 108
4.11.7 創(chuàng)建新版的word 109
4.11.8 歡迎玩家的到來 109
4.11.9 獲取玩家的答案 109
4.11.10 向玩家表示恭喜 109
4.11.11 結(jié)束游戲 110
4.12 小結(jié) 110
第5章 列表和字典:Hangman游戲 111
5.1 Hangman游戲簡介 111
5.2 使用列表 113
5.2.1 Hero’s
Inventory
3.0程序簡介 113
5.2.2 創(chuàng)建列表 114
5.2.3 對列表使用len()函數(shù) 114
5.2.4 對列表使用in運(yùn)算符 114
5.2.5 對列表進(jìn)行索引 114
5.2.6 對列表進(jìn)行切片 115
5.2.7 對列表進(jìn)行連接 115
5.2.8 理解列表的可變性 115
5.2.9 通過索引對列表元素進(jìn)行賦值 116
5.2.10 通過切片對列表進(jìn)行賦值 116
5.2.11 刪除列表元素 116
5.2.12 刪除列表切片 117
5.3 使用列表方法 117
5.3.1 High
Scores程序簡介 117
5.3.2 準(zhǔn)備工作 118
5.3.3 顯示菜單 118
5.3.4 退出程序 119
5.3.5 顯示得分記錄 119
5.3.6 添加得分記錄 119
5.3.7 刪除得分記錄 120
5.3.8 對得分記錄進(jìn)行排序 120
5.3.9 處理效選項(xiàng) 121
5.3.10 等一等用戶 121
5.4 理解元組和列表的使用場景 122
5.5 使用嵌套序列 122
5.5.1 High
Scores
2.0程序簡介 122
5.5.2 創(chuàng)建嵌套序列 123
5.5.3 訪問嵌套元素 124
5.5.4 序列的解包 125
5.5.5 準(zhǔn)備工作 125
5.5.6 訪問嵌套的元組并顯示得分 126
5.5.7 通過附加嵌套元組的方式添加得分記錄 126
5.5.8 處理效菜單項(xiàng) 126
5.5.9 等一等用戶 126
5.6 理解共享引用 127
5.7 使用字典 129
5.7.1 Geek
Translator程序簡介 129
5.7.2 創(chuàng)建字典 130
5.7.3 訪問字典的值 130
5.7.4 準(zhǔn)備工作 132
5.7.5 獲取值 133
5.7.6 增加鍵值對 133
5.7.7 替換鍵值對 134
5.7.8 刪除鍵值對 134
5.7.9 結(jié)束程序 135
5.7.10 理解字典的需求 135
5.8 回到Hangman游戲 136
5.8.1 準(zhǔn)備工作 136
5.8.2 創(chuàng)建常量 137
5.8.3 初始化變量 140
5.8.4 創(chuàng)建主循環(huán) 140
5.8.5 獲取用戶的答案 140
5.8.6 判斷猜測結(jié)果 141
5.8.7 結(jié)束程序 141
5.9 小結(jié) 142
第6章 函數(shù):Tic-Tac-Toe游戲 143
6.1 Tic-Tac-Toe游戲簡介 143
6.2 創(chuàng)建函數(shù) 144
6.2.1 Instructions程序簡介 145
6.2.2 定義函數(shù) 146
6.2.3 編制函數(shù)的文檔說明 146
6.2.4 調(diào)用函數(shù) 147
6.2.5 理解抽象 147
6.3 使用參數(shù)和返回值 147
6.3.1 Receive
and
Return程序簡介 148
6.3.2 通過參數(shù)獲取信息 149
6.3.3 通過返回值反饋信息 149
6.3.4 理解封裝 150
6.3.5 在同一個(gè)函數(shù)中接收和返回值 150
6.3.6 理解軟件復(fù)用 151
6.4 使用關(guān)鍵字參數(shù)和默認(rèn)參數(shù)值 152
6.4.1 Birthday
Wishes程序簡介 152
6.4.2 使用位置形參和位置實(shí)參 153
6.4.3 使用位置形參和關(guān)鍵字實(shí)參 154
6.4.4 使用默認(rèn)參數(shù)值 154
6.5 使用全局變量和常量 156
6.5.1 理解作用域 156
6.5.2 Global
Reach程序簡介 157
6.5.3 從函數(shù)內(nèi)部讀取全局變量 158
6.5.4 在函數(shù)內(nèi)部屏蔽全局變量 158
6.5.5 從函數(shù)內(nèi)部修改全局變量 159
6.5.6 理解何時(shí)使用全局變量和常量 159
6.6 回到Tic-Tac-Toe游戲 160
6.6.1 規(guī)劃Tic-Tac-Toe游戲 160
6.6.2 準(zhǔn)備工作 162
6.6.3 display_instruct()函數(shù) 162
6.6.4 ask_yes_no()函數(shù) 163
6.6.5 ask_number()函數(shù) 163
6.6.6 pieces()函數(shù) 164
6.6.7 new_board()函數(shù) 164
6.6.8 display_board()函數(shù) 164
6.6.9 legal_moves()函數(shù) 165
6.6.10 winner()函數(shù) 165
6.6.11 human_move()函數(shù) 166
6.6.12 computer_move()函數(shù) 167
6.6.13 next_turn()函數(shù) 169
6.6.14 congrat_winner()函數(shù) 169
6.6.15 main()函數(shù) 170
6.6.16 啟動(dòng)程序 171
6.7 小結(jié) 171
第7章 文件和異常:Trivia Challenge游戲 172
7.1 Trivia
Challenge游戲簡介 172
7.2 讀取文本文件 173
7.2.1 Read
It程序簡介 173
7.2.2 文件的打開和關(guān)閉 175
7.2.3 按字符讀取文件 176
7.2.4 按行讀取文件 177
7.2.5 將所有行讀取為一個(gè)列表 178
7.2.6 對文件進(jìn)行循環(huán)遍歷 178
7.3 寫入文本文件 179
7.3.1 Write
It程序簡介 179
7.3.2 將字符串寫入到文件 180
7.3.3 將字符串列表寫入到文件 180
7.4 在文件中存儲(chǔ)復(fù)雜數(shù)據(jù) 182
7.4.1 Pickle
It程序簡介 182
7.4.2 對數(shù)據(jù)進(jìn)行Pickle處理并寫入文件 182
7.4.3 讀取文件中的數(shù)據(jù)并進(jìn)行反Pickle處理 184
7.4.4 通過shelf保存序列化對象 185
7.4.5 通過shelf獲取序列化對象 186
7.5 處理異!187
7.5.1 Handle
It程序簡介 187
7.5.2 使用try語句及except子句 188
7.5.3 指定異常類型 188
7.5.4 處理多種異!190
7.5.5 獲取異常的參數(shù) 191
7.5.6 加上一個(gè)else子句 191
7.6 回到Trivia
Challenge游戲 192
7.6.1 理解數(shù)據(jù)文件結(jié)構(gòu) 192
7.6.2 open_file()函數(shù) 193
7.6.3 next_line()函數(shù) 194
7.6.4 next_block()函數(shù) 194
7.6.5 welcome()函數(shù) 195
7.6.6 游戲初始化設(shè)置 195
7.6.7 提出問題 195
7.6.8 獲取答案 196
7.6.9 判斷答案 196
7.6.10 獲取下一個(gè)問題 196
7.6.11 結(jié)束游戲 196
7.6.12 啟動(dòng)main()函數(shù) 197
7.7 小結(jié) 197
第8章 軟件對象:Critter Caretaker程序 198
8.1 Critter
Caretaker程序簡介 198
8.2 理解面向?qū)ο蠡A(chǔ)知識(shí) 200
8.3 創(chuàng)建類、方法和對象 200
8.3.1 Simple
Critter程序簡介 201
8.3.2 定義類 202
8.3.3 定義方法 202
8.3.4 實(shí)例化對象 203
8.3.5 調(diào)用方法 203
8.4 使用構(gòu)造器 203
8.4.1 Constructor
Critter程序簡介 203
8.4.2 創(chuàng)建構(gòu)造器 204
8.4.3 創(chuàng)建多個(gè)對象 205
8.5 使用特性 205
8.5.1 Attribute
Critter程序簡介 205
8.5.2 初始化特性 207
8.5.3 訪問特性 208
8.5.4 打印對象 208
8.6 使用類特性和靜態(tài)方法 209
8.6.1 Classy
Critter程序簡介 209
8.6.2 創(chuàng)建類特性 211
8.6.3 訪問類特性 211
8.6.4 創(chuàng)建靜態(tài)方法 212
8.6.5 調(diào)用靜態(tài)方法 212
8.7 理解對象封裝 213
8.8 使用私有特性和私有方法 213
8.8.1 Private
Critter程序簡介 214
8.8.2 創(chuàng)建私有特性 214
8.8.3 訪問私有特性 215
8.8.4 創(chuàng)建私有方法 216
8.8.5 訪問私有方法 216
8.8.6 尊重對象的隱私 217
8.8.7 理解何時(shí)該實(shí)現(xiàn)私有策略 217
8.9 控制對特性的訪問 218
8.9.1 Property
Critter程序簡介 218
8.9.2 創(chuàng)建屬性 219
8.9.3 訪問屬性 220
8.10 回到Critter
Caretaker程序 221
8.10.1 Critter類 222
8.10.2 創(chuàng)建Critter 224
8.10.3 創(chuàng)建菜單系統(tǒng) 224
8.10.4 啟動(dòng)程序 225
8.11 小結(jié) 225
第9章 面向?qū)ο缶幊蹋築lackjack游戲 227
9.1 Blackjack游戲簡介 227
9.2 發(fā)送和接收消息 228
9.2.1 Alien
Blaster程序簡介 228
9.2.2 發(fā)送消息 230
9.2.3 接收消息 231
9.3 組合多個(gè)對象 231
9.3.1 Playing
Cards程序簡介 231
9.3.2 創(chuàng)建Card類 232
9.3.3 創(chuàng)建Hand類 232
9.3.4 使用Card對象 233
9.3.5 通過Hand對象將多個(gè)Card對象組合起來 234
9.4 通過繼承創(chuàng)建新類 235
9.5 通過繼承擴(kuò)展類 235
9.5.1 Playing
Cards
2.0程序簡介 235
9.5.2 創(chuàng)建一個(gè)基類 236
9.5.3 繼承基類 237
9.5.4 擴(kuò)展派生類 238
9.5.5 使用派生類 239
9.6 改變繼承方法的行為 241
9.6.1 Playing
Cards
3.0程序簡介 241
9.6.2 創(chuàng)建基類 242
9.6.3 重寫基類方法 242
9.6.4 調(diào)用基類方法 243
9.6.5 使用派生類 244
9.7 理解多態(tài) 245
9.8 創(chuàng)建模塊 245
9.8.1 Simple
Game程序簡介 246
9.8.2 編寫模塊 246
9.8.3 引入模塊 248
9.8.4 使用引入的函數(shù)和類 248
9.9 回到Blackjack游戲 249
9.9.1 cards模塊 249
9.9.2 對類進(jìn)行設(shè)計(jì) 251
9.9.3 為游戲循環(huán)編寫偽碼 252
9.9.4 引入cards和games模塊 253
9.9.5 BJ_Card類 253
9.9.6 BJ_Deck類 254
9.9.7 BJ_Hand類 254
9.9.8 BJ_Player類 256
9.9.9 BJ_Dealer類 256
9.9.10 BJ_Game類 257
9.9.11 main()函數(shù) 259
9.10 小結(jié) 260
第10章 GUI開發(fā):Mad Lib程序 262
10.1 Mad
Lib程序簡介 262
10.2 詳解GUI 264
10.3 理解事件驅(qū)動(dòng)編程 265
10.4 使用根窗體 266
10.4.1 Simple
GUI程序簡介 266
10.4.2 引入tkinter模塊 268
10.4.3 創(chuàng)建根窗體 268
10.4.4 修整根窗體 268
10.4.5 進(jìn)入根窗體的事件循環(huán) 269
10.5 使用標(biāo)簽 269
10.5.1 Labeler程序簡介 269
10.5.2 準(zhǔn)備工作 269
10.5.3 創(chuàng)建框架 270
10.5.4 創(chuàng)建標(biāo)簽 270
10.5.5 進(jìn)入根窗體的事件循環(huán) 271
10.6 使用按鈕 271
10.6.1 Lazy
Buttons程序簡介 271
10.6.2 準(zhǔn)備工作 271
10.6.3 創(chuàng)建按鈕 272
10.6.4 進(jìn)入根窗體的事件循環(huán) 273
10.7 利用類創(chuàng)建GUI 273
10.7.1 Lazy
Buttons
2程序簡介 273
10.7.2 引入tkinter模塊 273
10.7.3 定義Application類 273
10.7.4 定義構(gòu)造器方法 274
10.7.5 定義一個(gè)用于創(chuàng)建小部件的方法 274
10.7.6 創(chuàng)建Application對象 275
10.8 將小部件與事件處理器綁定起來 275
10.8.1 Click
Counter程序簡介 275
10.8.2 準(zhǔn)備工作 275
10.8.3 綁定事件處理器 276
10.8.4 創(chuàng)建事件處理器 276
10.8.5 程序收尾工作 277
10.9 使用Text和Entry小部件以及Grid布局管理器 277
10.9.1 Longevity程序簡介 277
10.9.2 準(zhǔn)備工作 278
10.9.3 利用Grid布局管理器放置小部件 278
10.9.4 創(chuàng)建Entry小部件 279
10.9.5 創(chuàng)建Text小部件 280
10.9.6 利用文本型小部件獲取和插入文本 280
10.9.7 收尾工作 281
10.10 使用復(fù)選框 282
10.10.1 Movie
Chooser程序簡介 282
10.10.2 準(zhǔn)備工作 282
10.10.3 使小部件的容器成為其唯一的引用 283
10.10.4 創(chuàng)建復(fù)選框 283
10.10.5 獲取復(fù)選框的狀態(tài) 285
10.10.6 收尾工作 285
10.11 使用單選框 286
10.11.1 Movie
Chooser
2程序簡介 286
10.11.2 準(zhǔn)備工作 286
10.11.3 創(chuàng)建單選框 287
10.11.4 從一組單選框中獲取選定值 288
10.11.5 收尾工作 289
10.12 回到Mad
Lib程序 289
10.12.1 引入tkinter模塊 289
10.12.2 Application類的構(gòu)造器方法 289
10.12.3 Application類的create_widgets()方法 290
10.12.4 Application類的tell_story()方法 292
10.12.5 程序的主體部分 293
10.13 小結(jié) 293
第11章 圖形圖像:Pizza Panic游戲 294
11.1 Pizza
Panic游戲簡介 294
11.2 pygame和livewires簡介 296
11.3 創(chuàng)建圖形窗口 296
11.3.1 New
Graphics
Window程序簡介 297
11.3.2 引入games模塊 297
11.3.3 初始化圖形屏幕 298
11.3.4 啟動(dòng)主循環(huán) 298
11.4 設(shè)置背景圖片 299
11.4.1 Background
Image程序簡介 299
11.4.2 加載圖片 300
11.4.3 設(shè)置背景 301
11.5 理解圖形坐標(biāo)系統(tǒng) 301
11.6 顯示sprite 302
11.6.1 Pizza
Sprite程序簡介 303
11.6.2 為sprite加載圖片 304
11.6.3 創(chuàng)建sprite 305
11.6.4 把sprite放到屏幕上面去 305
11.7 顯示文本 307
11.7.1 Big
Score程序簡介 307
11.7.2 引入color模塊 308
11.7.3 創(chuàng)建Text對象 308
11.7.4 向屏幕添加Text對象 309
11.8 顯示消息 309
11.8.1 You
Won程序簡介 309
11.8.2 引入color模塊 311
11.8.3 創(chuàng)建Message對象 311
11.8.4 使用屏幕的高度和寬度 312
11.8.5 把Message對象放到屏幕上面去 312
11.9 移動(dòng)sprite 312
11.9.1 Moving
Pizza程序簡介 312
11.9.2 設(shè)置sprite的速度值 314
11.10 處理屏幕邊界 314
11.10.1 Bouncing
Pizza程序簡介 314
11.10.2 準(zhǔn)備工作 315
11.10.3 從Sprite派生出一個(gè)新類 315
11.10.4 重寫update()方法 316
11.10.5 收尾工作 316
11.11 處理鼠標(biāo)輸入 317
11.11.1 Moving
Pan程序簡介 317
11.11.2 準(zhǔn)備工作 318
11.11.3 讀取鼠標(biāo)的x和y坐標(biāo) 318
11.11.4 設(shè)置鼠標(biāo)光標(biāo)的可見性 319
11.11.5 捕獲圖形屏幕中的輸入 319
11.11.6 收尾工作 320
11.12 碰撞檢測 320
11.12.1 Slippery
Pizza程序簡介 320
11.12.2 準(zhǔn)備工作 322
11.12.3 碰撞檢測 322
11.12.4 碰撞處理 322
11.12.5 收尾工作 323
11.13 回到Pizza
Panic游戲 324
11.13.1 準(zhǔn)備工作 324
11.13.2 Pan類 324
11.13.3 Pizza類 326
11.13.4 Chef類 328
11.13.5 main()函數(shù) 329
11.14 小結(jié) 330
第12章 聲音、動(dòng)畫以及程序開發(fā):Astrocrash游戲 332
12.1 Astrocrash游戲簡介 332
12.2 讀取鍵盤 334
12.2.1 Read
Key程序簡介 334
12.2.2 準(zhǔn)備工作 334
12.2.3 按鍵判斷 335
12.2.4 收尾工作 336
12.3 旋轉(zhuǎn)sprite 336
12.3.1 Rotate
Sprite程序簡介 336
12.3.2 使用Sprite的angle屬性 338
12.4 創(chuàng)建動(dòng)畫 339
12.4.1 Explosion程序簡介 339
12.4.2 爆炸圖片說明 339
12.4.3 準(zhǔn)備工作 340
12.4.4 創(chuàng)建圖片文件列表 340
12.4.5 創(chuàng)建Animation對象 341
12.5 播放聲音和音樂 342
12.5.1 Sound
and
Music程序簡介 342
12.5.2 操作聲音 342
12.5.3 操作音樂 345
12.5.4 收尾工作 346
12.6 規(guī)劃Astrocrash游戲 346
12.6.1 游戲的功能 347
12.6.2 游戲的類 347
12.6.3 游戲的資源 348
12.7 創(chuàng)建小行星 348
12.7.1 Astrocrash01程序簡介 348
12.7.2 準(zhǔn)備工作 349
12.7.3 Asteroid類 349
12.7.4 main()函數(shù) 351
12.8 旋轉(zhuǎn)飛船 351
12.8.1 Astrocrash02程序簡介 351
12.8.2 Ship類 352
12.8.3 實(shí)例化Ship對象 353
12.9 移動(dòng)飛船 353
12.9.1 Astrocrash03程序簡介 353
12.9.2 引入math模塊 354
12.9.3 為Ship類添加類變量和常量 354
12.9.4 修改Ship的update()方法 354
12.10 發(fā)射導(dǎo)彈 355
12.10.1 Astrocrash04程序簡介 356
12.10.2 修改Ship的update()方法 356
12.10.3 Missile類 357
12.11 控制導(dǎo)彈發(fā)射的頻率 359
12.11.1 Astrocrash05程序簡介 359
12.11.2 為Ship類添加一個(gè)類常量 360
12.11.3 為Ship類創(chuàng)建構(gòu)造器方法 360
12.11.4 修改Ship類的update()方法 360
12.12 處理碰撞 361
12.12.1 Astrocrash06程序簡介 361
12.12.2 修改Missile類的update()方法 362
12.12.3 為Missile類添加die()方法 362
12.12.4 修改Ship類的update()方法 362
12.12.5 為Ship類添加die()方法 362
12.12.6 為Asteroid類添加一個(gè)類常量 363
12.12.7 為Asteroid類添加die()方法 363
12.13 添加爆炸效果 363
12.13.1 Astrocrash07程序簡介 363
12.13.2 Wrapper類 364
12.13.3 Collider類 365
12.13.4 修改Asteroid類 366
12.13.5 修改Ship類 366
12.13.6 修改Missile類 367
12.13.7 Explosion類 367
12.14 添加難度級(jí)別、得分記錄以及背景音樂 368
12.14.1 Astrocrash08程序簡介 368
12.14.2 引入color模塊 369
12.14.3 Game類 369
12.14.4 為Asteroid類添加類變量和類常量 373
12.14.5 修改Asteroid類的構(gòu)造器方法 373
12.14.6 修改Asteroid類的die()方法 374
12.14.7 為Ship類添加類常量 374
12.14.8 修改Ship類的構(gòu)造器方法 375
12.14.9 修改Ship類的update()方法 375
12.14.10 為Ship類添加die()方法 375
12.14.11 main()函數(shù) 375
12.15 小結(jié) 376
附錄A 配套網(wǎng)站 377
附錄B livewires參考 379
python編程初學(xué)者指南節(jié)選
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版