第Ⅰ部分 在筆記本環(huán)境中學習Python
第 1章 筆記本簡介 3
1.1 運行Python語句 3
1.2 Jupyter筆記本 4
1.3 Google Colab 4
1.3.1 Colab文本單元 5
1.3.2 LaTeX 7
1.3.3 Colab代碼單元 7
1.3.4 Colab文件 7
1.3.5 管理Colab文檔 8
1.3.6 Colab代碼片段 8
1.3.7 現有資料集 8
1.3.8 系統(tǒng)別名 8
1.3.9 魔法函數 9
1.4 本章小結 9
1.5 問題 9
第 2章 Python基礎 10
2.1 Python的基本類型 10
2.1.1 高級語言與低級語言 11
2.1.2 語句 12
2.2 執(zhí)行基礎數學運算 17
2.3 用點號訪問類和對象 18
2.4 本章小結 18
2.5 問題 18
第3章 序列 19
3.1 通用的操作 19
3.1.1 檢測成員關系 19
3.1.2 索引 20
3.1.3 切片 20
3.1.4 查看信息 21
3.1.5 數學運算 22
3.2 列表和元組 22
3.2.1 創(chuàng)建列表和元組 22
3.2.2 添加和刪除列表元素 23
3.2.3 拆包 25
3.2.4 列表排序 25
3.3 字符串 26
3.4 range對象 27
3.5 本章小結 28
3.6 問題 28
第4章 其他數據結構 29
4.1 字典 29
4.1.1 創(chuàng)建字典 29
4.1.2 利用鍵訪問、追加、更新
字典 30
4.1.3 從字典中移除項目 31
4.1.4 字典視圖 32
4.1.5 判斷字典是否包含某個鍵 34
4.1.6 get方法 34
4.1.7 合法的鍵類型 35
4.1.8 哈希方法 36
4.2 集合 37
4.2.1 集合的運算 39
4.2.2 原封集合 43
4.3 本章小結 44
4.4 問題 44
第5章 執(zhí)行控制 45
5.1 復合語句 45
5.1.1 復合語句的結構 45
5.1.2 判斷True與False 46
5.2 if語句 49
5.3 while循環(huán) 52
5.4 for循環(huán) 52
5.5 break和continue語句 53
5.6 本章小結 54
5.7 問題 54
第6章 函數 55
6.1 定義函數 55
6.1.1 控制語句 55
6.1.2 文檔字符串 56
6.1.3 參數 57
6.1.4 返回語句 62
6.2 函數的作用域 63
6.3 裝飾器 63
6.4 匿名函數 67
6.5 本章小結 68
6.6 問題 68
第Ⅱ部分 數據科學庫
第7章 NumPy 73
7.1 安裝并引入NumPy 73
7.2 創(chuàng)建數組 74
7.3 索引與切片 77
7.4 逐元素運算 78
7.5 過濾值 80
7.6 視圖與拷貝 81
7.7 數組的一些方法 83
7.8 廣播 86
7.9 NumPy代數 88
7.10 本章小結 89
7.11 問題 89
第8章 SciPy 90
8.1 SciPy簡介 90
8.2 scipy.misc子模塊 90
8.3 scipy.special子模塊 91
8.4 scipy.stats子模塊 92
8.4.1 離散分布 92
8.4.2 連續(xù)分布 95
8.5 本章小結 98
8.6 問題 98
第9章 pandas 99
9.1 關于數據框 99
9.2 創(chuàng)建數據框 99
9.2.1 通過字典創(chuàng)建數據框 100
9.2.2 根據列表的列表創(chuàng)建數據框 101
9.2.3 利用文件創(chuàng)建數據框 102
9.3 與數據框中的數據交互 102
9.3.1 首尾 103
9.3.2 描述統(tǒng)計學 104
9.3.3 訪問數據 105
9.3.4 方括號語法 106
9.3.5 利用標簽優(yōu)化數據訪問 108
9.3.6 利用索引優(yōu)化數據訪問 109
9.3.7 遮罩與過濾 110
9.3.8 pandas布爾運算 111
9.4 操縱數據框 112
9.5 操縱數據 114
9.6 交互式顯示 117
9.7 本章小結 117
9.8 問題 117
第 10章 可視化庫 119
10.1 Matplotlib 119
10.1.1 調整樣式 120
10.1.2 帶標簽的數據 123
10.1.3 繪制多組數據 124
10.1.4 面向對象的樣式 125
10.2 seaborn 127
10.3 Plotly 130
10.4 Bokeh 131
10.5 其他可視化庫 132
10.6 本章小結 133
10.7 問題 133
第 11章 機器學習庫 134
11.1 常用機器學習庫 134
11.2 機器學習如何工作 134
11.2.1 轉換 135
11.2.2 劃分測試與訓練數據 136
11.2.3 訓練與測試 137
11.3 進一步學習scikit-learn 137
11.4 本章小結 137
11.5 問題 138
第 12章 自然語言工具箱 139
12.1 NLTK示例文本 139
12.2 頻度分布 141
12.3 文本對象 144
12.4 文本分類 146
12.5 本章小結 148
12.6 習題 149
第Ⅲ部分 Python中級知識
第 13章 函數式編程 153
13.1 函數式編程簡介 153
13.1.1 作用域與狀態(tài) 153
13.1.2 依賴全局狀態(tài) 154
13.1.3 改變狀態(tài) 155
13.1.4 修改可變數據 156
13.1.5 函數式編程中的函數 157
13.2 列表推導式 159
13.2.1 列表推導式的基本語法 159
13.2.2 替代map和filter 159
13.2.3 多變量 160
13.2.4 字典推導式 161
13.3 生成器 161
13.3.1 生成器表達式 161
13.3.2 生成器函數 162
13.4 本章小結 164
13.5 問題 164
第 14章 面向對象編程 165
14.1 將狀態(tài)與函數編組 165
14.1.1 類與實例 165
14.1.2 私有方法和變量 167
14.1.3 類變量 168
14.2 特殊方法 168
14.2.1 表示方法 169
14.2.2 富比較方法 170
14.2.3 數學運算方法 173
14.3 繼承 174
14.4 本章小結 177
14.5 問題 177
第 15章 其他主題 178
15.1 排序 178
15.2 讀寫文件 181
15.3 datetime對象 182
15.4 正則表達式 184
15.4.1 字符集 185
15.4.2 字符類 185
15.4.3 分組 186
15.4.4 帶名分組 186
15.4.5 搜索所有匹配 187
15.4.6 搜索迭代器 187
15.4.7 替換 187
15.4.8 使用帶名分組替換 187
15.4.9 編譯正則表達式 188
15.5 本章小結 189
15.6 問題 189
附錄A 章末問題答案 190
附錄B 圖片版權 195