目錄
緒論1
第1章初見Python4
1.1Python是什么4
1.2純凈的Python5
1.2.1獲取Python5
1.2.2從IDLE啟動Python6
1.2.3嘗試簡單的東西7
1.2.4嘗試高級編輯器7
1.3用Anaconda的Python10
1.3.1什么是Anaconda10
1.3.2為什么用Anaconda10
1.3.3獲取Anaconda10
1.3.4Anaconda的基本操作13
1.3.5鏡像的使用14
1.3.6Anaconda和Python的關系15
1.4安裝錯誤解決方案15
1.5運行Python腳本15
1.5.1Windows環(huán)境15
1.5.2Linux環(huán)境17
1.6小結17
習題17
第2章嘗試使用Python19
2.1嘗試用Python寫個小游戲19
2.2縮進21
2.3BIF22
2.3.1輸入輸出函數23
2.3.2進制轉換函數24
2.3.3求數據類型函數25
2.3.4del():刪除對象函數26
2.3.5數字函數26
2.4PEP827
2.4.1縮進和對齊27
2.4.2import導入27
2.4.3空格27
2.4.4注釋28
2.4.5命名28
2.4.6其他28
2.5小結28
習題28
第3章Python語言基礎30
3.1變量30
3.1.1什么是變量30
3.1.2給變量賦值30
3.2字符串34
3.2.1普通字符串34
3.2.2多行字符串42
3.2.3格式化字符串43
3.2.4轉義字符串52
3.2.5內建方法53
3.3簡單數據結構56
3.3.1整型56
3.3.2浮點型57
3.3.3布爾型57
3.3.4類型轉換58
3.3.5獲得關于類型的信息59
3.4常用操作符60
3.4.1算術操作符60
3.4.2優(yōu)先級問題64
3.4.3比較操作符65
3.4.4邏輯操作符66
3.4.5None66
3.5小結67
習題68
第4章深入Python流程控制70
4.1順序結構70
4.1.1案例一:求任意兩個整數和70
4.1.2案例二:隨機抽取字母72
4.2選擇結構72
4.2.1只需要判斷一種的情況73
4.2.2僅有兩種情況可以選擇73
4.2.3多種可以選擇的情況74
4.3循環(huán)結構80
4.3.1for循環(huán)80
4.3.2while循環(huán)87
4.4懸掛else91
4.5pass語句92
4.6三元運算符92
4.7斷言93
4.8小結94
習題95
第5章列表、元組、字典與集合98
5.1列表98
5.1.1什么是列表98
5.1.2創(chuàng)建一個列表98
5.1.3訪問列表99
5.1.4對列表元素的操作102
5.1.5列表切片109
5.1.6多維數據111
5.1.7列表排序112
5.1.8列表推導式117
5.1.9內置方法117
5.2元組118
5.2.1定義元組118
5.2.2遍歷元組120
5.2.3元組切片120
5.2.4元組運算120
5.2.5刪除元組121
5.2.6內置方法122
5.2.7特殊元組122
5.3字典122
5.3.1什么是字典123
5.3.2創(chuàng)建字典123
5.3.3訪問字典123
5.3.4對字典的操作125
5.3.5有序的字典127
5.3.6內置方法129
5.4集合129
5.4.1創(chuàng)建集合129
5.4.2對集合的操作130
5.4.3內置方法132
5.5復制133
5.6小結134
習題134
第6章函數136
6.1Python函數136
6.1.1創(chuàng)建和調用136
6.1.2函數的參數137
6.1.3函數的返回值145
6.1.4函數文檔146
6.2函數中的變量148
6.2.1局部變量148
6.2.2全局變量149
6.2.3變量作用域151
6.3函數式編程152
6.3.1高階函數153
6.3.2閉包154
6.3.3裝飾器155
6.3.4lambda155
6.3.5常用函數156
6.3.6偏函數158
6.4遞歸159
6.5迭代器160
第7章類和對象163
7.1什么是類163
7.2什么是對象164
7.3使用類和對象164
7.3.1創(chuàng)建類164
7.3.2創(chuàng)建對象165
7.3.3使用對象166
7.3.4內置方法167
7.4訪問控制177
7.5staticmethod和classmethod181
7.6dataclass185
7.7繼承188
7.7.1如何書寫繼承188
7.7.2子類中的__init__()189
7.7.3多繼承和多重繼承190
7.7.4組合193
7.8小結194
習題194
第8章模塊195
8.1模塊就是程序195
8.2導入模塊197
8.2.1模塊組成197
8.2.2模塊的導入過程197
8.2.3模塊與當前程序命名空間的關系197
8.2.4為模塊起別名197
8.2.5導入多個模塊198
8.2.6dir()函數199
8.3__name__200
8.4搜索路徑201
8.5包結構201
8.6小結202
第9章**儲存203
9.1文件操作203
9.1.1打開文件203
9.1.2寫入文件207
9.1.3關閉文件208
9.1.4讀取文件208
9.1.5文件定位209
9.1.6選擇with語句210
9.2常用os模塊方法211
9.2.1os.name211
9.2.2os.getenv()212
9.2.3os.listdir()212
9.2.4os.mkdir()和os.makedirs()212
9.2.5os.rmdir()和os.removedirs()212
9.2.6os.rename()213
9.3文件對象的其他方法213
9.4文件路徑操作的兩個重要模塊213
9.4.1os.path213
9.4.2pathlib215
9.5小結217
習題217
第10章異常處理218
10.1什么是異常218
10.2try-execpt218
10.3try-except-finally221
10.4else222
10.5raise223
10.6自定義異常224
10.7靜態(tài)類型檢查225
10.8小結226
第11章Python計算生態(tài)227
11.1標準庫227
11.2第三方庫230
11.2.1獲取與安裝231
11.2.2不同領域的第三方庫簡介237
11.3小結239
第12章正則表達式240
12.1什么是正則表達式240
12.2正則表達式書號240
12.3re模塊240
12.3.1re.match242
12.3.2re.search243
12.3.3re.findall245
12.3.4re.finditer246
12.3.5re.sub247
12.3.6可選標志248
12.4小結249
習題249
第13章Python腳本250
13.1什么是Python腳本250
13.2編寫Python腳本250
13.3處理腳本參數及選項253
13.3.1使用argparse253
13.3.2使用click258
13.4安裝自定義腳本262
13.5小結264
習題264
第14章日志265
14.1為什么使用日志265
14.2日志相關概念265
14.2.1日志等級265
14.2.2日志信息與格式266
14.3logging模塊267
14.3.1日志流程267
14.3.2logging簡單使用268
14.3.3自定義logger271
14.4項目中l(wèi)ogging的使用273
14.5小結275
習題276
第15章單元測試277
15.1為什么要進行單元測試277
15.2在Python中進行單元測試278
15.2.1首次使用單元測試278
15.2.2fixture280
15.3小結286
習題286