譯者序
前言
致謝
部分 Python編程簡介
第1章 Python基礎 2
1.1 開始使用Python 2
1.1.1 設置工作環(huán)境 2
1.1.2 運行Python代碼的
三種方法 5
1.2 Python作為計算器 7
1.3 包管理 11
1.3.1 使用包管理器管理包 11
1.3.2 從源代碼中安裝包 13
1.4 Jupyter Notebook簡介 13
1.4.1 啟動Jupyter Notebook 14
1.4.2 筆記本 15
1.4.3 如何關閉筆記本 15
1.4.4 關閉Jupyter Notebook
服務器 15
1.5 邏輯表達式和運算符 16
1.6 總結和習題 18
1.6.1 總結 18
1.6.2 習題 18
第2章 變量和基本數據結構 20
2.1 變量和賦值 20
2.2 數據結構—字符串 22
2.3 數據結構—列表 26
2.4 數據結構—元組 28
2.5 數據結構—集合 30
2.6 數據結構—字典 31
2.7 numpy數組 33
2.8 總結和習題 40
2.8.1 總結 40
2.8.2 習題 40
第3章 函數 42
3.1 函數基礎 42
3.1.1 Python 內置函數 42
3.1.2 定義自己的函數 42
3.2 局部變量和全局變量 49
3.3 嵌套函數 52
3.4 lambda函數 53
3.5 函數作為函數的參數 54
3.6 總結和習題 55
3.6.1 總結 55
3.6.2 習題 55
第4章 分支語句 59
4.1 if-else語句 59
4.2 三元運算符 65
4.3 總結和習題 65
4.3.1 總結 65
4.3.2 習題 65
第5章 迭代 69
5.1 for循環(huán) 69
5.2 while循環(huán) 74
5.3 推導式 76
5.3.1 列表推導式 76
5.3.2 字典推導式 77
5.4 總結和習題 77
5.4.1 總結 77
5.4.2 習題 77
第6章 遞歸 81
6.1 遞歸函數 81
6.2 分而治之 85
6.2.1 漢諾塔問題 85
6.2.2 快速排序 87
6.3 總結和習題 88
6.3.1 總結 88
6.3.2 習題 89
第7章 面向對象編程 94
7.1 面向對象編程簡介 94
7.2 類和對象 95
7.2.1 類 95
7.2.2 對象 97
7.2.3 類屬性與實例屬性 98
7.3 繼承、封裝和多態(tài) 99
7.3.1 繼承 99
7.3.2 封裝 102
7.3.3 多態(tài) 103
7.4 總結和習題 103
7.4.1 總結 103
7.4.2 習題 103
第8章 復雜度 105
8.1 復雜度和大O表示法 105
8.2 復雜度問題 107
8.3 分析器 108
8.3.1 使用魔術命令 108
8.3.2 使用Python分析器 109
8.3.3 使用line分析器 110
8.4 總結和習題 111
8.4.1 總結 111
8.4.2 習題 111
第9章 數字的表示 113
9.1 baseN和二進制 113
9.2 浮點數 114
9.3 舍入誤差 118
9.3.1 表示誤差 118
9.3.2 浮點運算導致的舍入誤差 118
9.3.3 舍入誤差的累積 119
9.4 總結和習題 120
9.4.1 總結 120
9.4.2 習題 120
第10章 錯誤、良好的編程實踐
和調試 123
10.1 錯誤類型 123
10.2 避免錯誤 125
10.2.1 規(guī)劃你的程序 125
10.2.2 經常進行測試 126
10.2.3 保持代碼整潔 126
10.3 異?!?28
10.4 類型檢查 130
10.5 調試 132
10.5.1 在遇到異常時激活
調試器 132
10.5.2 在運行代碼前激活
調試器 134
10.5.3 添加斷點 135
10.6 總結和習題 136
10.6.1 總結 136
10.6.2 習題 136
第11章 讀寫數據 137
11.1 文本文件 137
11.1.1 寫入文件 137
11.1.2 附加文件 138
11.1.3 讀取文件 138
11.1.4 處理數字和數組 139
11.2 CSV文件 140
11.2.1 寫入和打開CSV文件 141
11.2.2 讀取CSV文件 142
11.2.3 numpy之外 142
11.3 pickle文件 142
11.3.1 寫入pickle文件 142
11.3.2 讀取pickle文件 143
11.3.3 讀取Python 2的pickle
文件 143
11.4 JSON文件 143
11.4.1 JSON格式 143
11.4.2 寫入JSON文件 144
11.4.3 讀取JSON文件 144
11.5 HDF5文件 145
11.5.1 讀取HDF5文件 146
11.6 總結和習題 147
11.6.1 總結 147
11.6.2 習題 147
第12章 可視化和繪圖 148
12.1 二維繪圖 148
12.2 三維繪圖 156
12.3 使用地圖 161
12.4 動畫和電影 165
12.5 總結和習題 167
12.5.1 總結 167
12.5.2 習題 167
第13章 Python并行化 173
13.1 并行計算基礎知識 173
13.1.1 進程和線程 174
13.1.2 Python的GIL問題 174
13.1.3 使用并行計算的缺點 174
13.2 多進程 174
13.2.1