第一部分 基礎(chǔ)知識(shí)
第1章 起步 2
1.1 搭建編程環(huán)境 2
1.1.1 Python 2和Python 3 2
1.1.2 運(yùn)行Python代碼片段 3
1.1.3 Hello World程序 3
1.2 在不同操作系統(tǒng)中搭建Python編程環(huán)境 3
1.2.1 在Linux系統(tǒng)中搭建Python編程環(huán)境 3
1.2.2 在OS X系統(tǒng)中搭建Python編程環(huán)境 6
1.2.3 在Windows系統(tǒng)中搭建Python編程環(huán)境 8
1.3 解決安裝問(wèn)題 12
1.4 從終端運(yùn)行Python程序 13
1.4.1 在Linux和OS X系統(tǒng)中從終端運(yùn)行Python程序 13
1.4.2 在Windows系統(tǒng)中從終端運(yùn)行Python程序 13
1.5 小結(jié) 14
第2章 變量和簡(jiǎn)單數(shù)據(jù)類(lèi)型 15
2.1 運(yùn)行hello_world.py時(shí)發(fā)生的情況 15
2.2 變量 16
2.2.1 變量的命名和使用 16
2.2.2 使用變量時(shí)避免命名錯(cuò)誤 17
2.3 字符串 18
2.3.1 使用方法修改字符串的大小寫(xiě) 19
2.3.2 合并(拼接)字符串 19
2.3.3 使用制表符或換行符來(lái)添加空白 20
2.3.4 刪除空白 21
2.3.5 使用字符串時(shí)避免語(yǔ)法錯(cuò)誤 22
2.3.6 Python 2中的print語(yǔ)句 23
2.4 數(shù)字 24
2.4.1 整數(shù) 24
2.4.2 浮點(diǎn)數(shù) 25
2.4.3 使用函數(shù)str()避免類(lèi)型錯(cuò)誤 25
2.4.4 Python 2中的整數(shù) 26
2.5 注釋 27
2.5.1 如何編寫(xiě)注釋 27
2.5.2 該編寫(xiě)什么樣的注釋 28
2.6 Python之禪 28
2.7 小結(jié) 30
第3章 列表簡(jiǎn)介 31
3.1 列表是什么 31
3.1.1 訪(fǎng)問(wèn)列表元素 32
3.1.2 索引從0而不是1開(kāi)始 32
3.1.3 使用列表中的各個(gè)值 33
3.2 修改、添加和刪除元素 33
3.2.1 修改列表元素 34
3.2.2 在列表中添加元素 34
3.2.3 從列表中刪除元素 35
3.3 組織列表 39
3.3.1 使用方法sort()對(duì)列表進(jìn)行永久性排序 39
3.3.2 使用函數(shù)sorted()對(duì)列表進(jìn)行臨時(shí)排序 40
3.3.3 倒著打印列表 41
3.3.4 確定列表的長(zhǎng)度 41
3.4 使用列表時(shí)避免索引錯(cuò)誤 42
3.5 小結(jié) 43
第4章 操作列表 44
4.1 遍歷整個(gè)列表 44
4.1.1 深入地研究循環(huán) 45
4.1.2 在for循環(huán)中執(zhí)行更多的操作 46
4.1.3 在for循環(huán)結(jié)束后執(zhí)行一些操作 47
4.2 避免縮進(jìn)錯(cuò)誤 47
4.2.1 忘記縮進(jìn) 48
4.2.2 忘記縮進(jìn)額外的代碼行 48
4.2.3 不必要的縮進(jìn) 49
4.2.4 循環(huán)后不必要的縮進(jìn) 49
4.2.5 遺漏了冒號(hào) 50
4.3 創(chuàng)建數(shù)值列表 51
4.3.1 使用函數(shù)range() 51
4.3.2 使用range()創(chuàng)建數(shù)字列表 51
4.3.3 對(duì)數(shù)字列表執(zhí)行簡(jiǎn)單的統(tǒng)計(jì)計(jì)算 53
4.3.4 列表解析 53
4.4 使用列表的一部分 54
4.4.1 切片 54
4.4.2 遍歷切片 56
4.4.3 復(fù)制列表 56
4.5 元組 59
4.5.1 定義元組 59
4.5.2 遍歷元組中的所有值 59
4.5.3 修改元組變量 60
4.6 設(shè)置代碼格式 61
4.6.1 格式設(shè)置指南 61
4.6.2 縮進(jìn) 61
4.6.3 行長(zhǎng) 61
4.6.4 空行 62
4.6.5 其他格式設(shè)置指南 62
4.7 小結(jié) 63
第5章 if語(yǔ)句 64
5.1 一個(gè)簡(jiǎn)單示例 64
5.2 條件測(cè)試 65
5.3 if語(yǔ)句 70
5.4 使用if語(yǔ)句處理列表 76
5.5 設(shè)置if語(yǔ)句的格式 80
5.6 小結(jié) 80
第6章 字典 81
6.1 一個(gè)簡(jiǎn)單的字典 81
6.2 使用字典 82
6.3 遍歷字典 87
6.4 嵌套 93
6.5 小結(jié) 99
第7章 用戶(hù)輸入和while循環(huán) 100
7.1 函數(shù)input()的工作原理 100
7.2 while循環(huán)簡(jiǎn)介 104
7.3 使用while循環(huán)來(lái)處理列表和字典 110
7.4 小結(jié) 113
第8章 函數(shù) 114
8.1 定義函數(shù) 114
8.2 傳遞實(shí)參 116
8.3 返回值 121
8.4 傳遞列表 126
8.5 傳遞任意數(shù)量的實(shí)參 130
8.6 將函數(shù)存儲(chǔ)在模塊中 133
8.7 函數(shù)編寫(xiě)指南 136
8.8 小結(jié) 137
第9章 類(lèi) 138
9.1 創(chuàng)建和使用類(lèi) 138
9.2 使用類(lèi)和實(shí)例 142
9.3 繼承 147
9.4 導(dǎo)入類(lèi) 153
9.5 Python標(biāo)準(zhǔn)庫(kù) 159
9.6 類(lèi)編碼風(fēng)格 161
9.7 小結(jié) 161
第10章 文件和異常 162
10.1 從文件中讀取數(shù)據(jù) 162
10.2 寫(xiě)入文件 169
10.3 異常 172
10.4 存儲(chǔ)數(shù)據(jù) 180
10.5 小結(jié) 186
第11章 測(cè)試代碼 187
11.1 測(cè)試函數(shù) 187
11.2 測(cè)試類(lèi) 193
11.3 小結(jié) 199
第二部分 項(xiàng) 目
項(xiàng)目1 外星人入侵 202
第12章 武裝飛船 203
12.1 規(guī)劃項(xiàng)目 203
12.2 安裝Pygame 204
12.3 開(kāi)始游戲項(xiàng)目 207
12.4 添加飛船圖像 211
12.5 重構(gòu):模塊game_functions 214
12.6 駕駛飛船 216
12.7 簡(jiǎn)單回顧 223
12.8 射擊 224
12.9 小結(jié) 231
第13章 外星人 232
13.1 回顧項(xiàng)目 232
13.2 創(chuàng)建第一個(gè)外星人 233
13.3 創(chuàng)建一群外星人 236
13.4 讓外星人群移動(dòng) 242
13.5 射殺外星人 246
13.6 結(jié)束游戲 250
13.7 確定應(yīng)運(yùn)行游戲的哪些部分 255
13.8 小結(jié) 256
第14章 記分 257
14.1 添加Play按鈕 257
14.2 提高等級(jí) 264
14.3 記分 267
14.4 小結(jié) 283
項(xiàng)目2 數(shù)據(jù)可視化 284
第15章 生成數(shù)據(jù) 285
15.1 安裝matplotlib 285
15.2 繪制簡(jiǎn)單的折線(xiàn)圖 287
15.3 隨機(jī)漫步 295
15.4 使用Pygal模擬擲骰子 303
15.5 小結(jié) 311
第16章 下載數(shù)據(jù) 312
16.1 CSV文件格式 312
16.2 制作交易收盤(pán)價(jià)走勢(shì)圖:JSON格式 324
16.3 小結(jié) 337
第17章 使用API 338
17.1 使用Web API 338
17.2 使用Pygal可視化倉(cāng)庫(kù) 344
17.3 Hacker News API 350
17.4 小結(jié) 353
項(xiàng)目3 Web應(yīng)用程序 354
第18章 Django入門(mén) 355
18.1 建立項(xiàng)目 355
18.2 創(chuàng)建應(yīng)用程序 360
18.3 創(chuàng)建網(wǎng)頁(yè):學(xué)習(xí)筆記主頁(yè) 369
18.4 創(chuàng)建其他網(wǎng)頁(yè) 373
18.5 小結(jié) 381
第19章 用戶(hù)賬戶(hù) 382
19.1 讓用戶(hù)能夠輸入數(shù)據(jù) 382
19.2 創(chuàng)建用戶(hù)賬戶(hù) 392
19.3 讓用戶(hù)擁有自己的數(shù)據(jù) 400
19.4 小結(jié) 408
第20章 設(shè)置應(yīng)用程序的樣式并對(duì)其進(jìn)行部署 409
20.1 設(shè)置項(xiàng)目“學(xué)習(xí)筆記”的樣式 409
20.2 部署“學(xué)習(xí)筆記” 419
20.3 小結(jié) 435
附錄A 安裝Python 436
附錄B 文本編輯器 441
附錄C 尋求幫助 447
附錄D 使用Git進(jìn)行版本控制 451
后記 460