從 Excel 到 Python:用 Python 輕鬆處理 Excel 數據, 2/e

曾賢志,曾智勇

  • 出版商: 電子工業
  • 出版日期: 2024-05-01
  • 定價: $534
  • 售價: 8.5$454
  • 語言: 簡體中文
  • 頁數: 316
  • ISBN: 7121476126
  • ISBN-13: 9787121476129
  • 相關分類: Excel
  • 下單後立即進貨 (約4週~6週)

買這商品的人也買了...

商品描述

本書是寫給非IT領域職場辦公人員的Python數據處理基礎指南。因為本書面對的不是專業的程序員,所以在敘述上通俗易懂。為了讓讀者在學習時對Python的知識點有更深刻的印象,書本採用了即學即用的寫作方式:在介紹知識點的同時,及時將知識點穿插到案例應用中。而案例應用採用“提出要解決的問題→找到解決問題的思路→展示完成前後的對比效果→提供解決問題的代碼→逐步分析代碼”的方式進行講解,使讀者既學會了Python的知識點,也釐清瞭解決問題的思路,同時掌握了代碼的編寫技巧。本書主要內容包括Python基礎、Python第三方庫、循環語句與分支語句、字符串處理技術、列表處理技術、元組處理技術、字典處理技術、集合處理技術、Python自定義函數、常用高階函數應用、openpyxl庫及Python與Excel綜合應用案例。本書第2版增加了第13章,介紹了使用Python的Pandas技術來處理Excel數據,方法更加簡潔、運行速度更高效。

目錄大綱

第1 章
Python 基礎——學習Python 必知必會 1
1.1 什麽是Python 2
1.2 為什麽要學習使用Python 處理Excel 表格 2
1.3 手把手教你安裝Python 2
1.3.1 下載Python. 3
1.3.2 安裝Python. 4
1.3.3 驗證是否安裝成功 . 9
1.4 安裝Python 集成開發工具PyCharm . 10
1.4.1 下載PyCharm 10
1.4.2 安裝PyCharm . 11
1.4.3 設置PyCharm 15
1.4.4 創建項目 18
1.5 Python 的輸出與輸入 20
1.5.1 輸出 20
1.5.2 輸入 21
1.6 Python 的代碼註釋 22
1.6.1 單行註釋 22
1.6.2 多行註釋 23
1.7 Python 對象詳解 23
1.7.1 類的定義 24
1.7.2 對象的身份 24
1.7.3 對象的類型 24
1.7.4 對象的值 25
1.7.5 對象的屬性 25
1.7.6 對象的方法 25
1.7.7 對象與變量 25
1.8 Python 中的數字與字符串 26
1.8.1 數字 26
1.8.2 字符串 27
1.9 算術運算符 28
1.9.1 加(+) 28
1.9.2 減(?) 28
1.9.3 乘(*) 29
1.9.4 除(/) . 29
1.9.5 取模(%). 29
1.9.6 冪(**) 29
1.9.7 取整數(//) 30
1.10 比較運算符 30
1.10.1 等於(==) . 30
1.10.2 不等於(!=) 30
1.10.3 大於(>) 30
1.10.4 小於(<) 31
1.10.5 大於或等於(>=) 31
1.10.6 小於或等於(<=) 31
1.11 賦值運算符 31
1.11.1 賦值運算 32
1.11.2 累積式賦值運算 32
1.12 邏輯運算符 33
1.12.1 and 33
1.12.2 or 34
1.12.3 not . 34
1.13 成員運算符 34
1.14 格式化字符串 35
1.14.1 使用位置和關鍵字格式化字符串 35
1.14.2 數字格式設置 36
1.14.3 對齊設置 36
1.15 斷點調試 37

第2 章
Python 庫——第三方庫的安裝與學習 . 39
2.1 什麽是模塊、包、庫 40
2.2 安裝Excel 讀取庫xlrd 40
2.3 導入xlrd 模塊 42
2.4 讀取Excel 工作簿、工作表信息 . 43
2.4.1 讀取Excel 工作簿 . 43
2.4.2 讀取Excel 工作表 . 43
2.5 讀取Excel 行、列、單元格信息 . 44
2.6 安裝Excel 寫入庫xlwt . 46
2.7 新建工作簿、新建工作表和將數據寫入單元格 . 47
2.8 安裝Excel 修改庫xlutils 48
2.9 修改工作簿、工作表、單元格 48

第 3 章
Python 流程控制——循環語句與分支語句 . 50
3.1 for 循環語句. 51
3.1.1 循環字符串 51
3.1.2 循環序列數 52
3.1.3 for 循環語句應用案例:批量新建工作簿 . 53
3.1.4 for 嵌套循環語句 54
3.1.5 for 嵌套循環語句應用案例:製作九九乘法表 . 55
3.2 while 循環語句 57
3.2.1 循環序列數 58
3.2.2 循環字符串 58
3.2.3 while 循環語句應用案例:批量新建工作表 . 59
3.2.4 while 嵌套循環語句 61
3.2.5 while 嵌套循環語句應用案例:批量新建工作簿、工作表 . 62
3.3 if 條件語句 . 63
3.3.1 if 條件語句標準用法 . 63
3.3.2 if 條件語句應用案例:根據分數判斷等級 . 64
3.4 if 條件分支語句 . 65
3.4.1 if 條件分支語句標準用法 . 66
3.4.2 if 條件分支語句單行寫法 . 66
3.4.3 if 條件分支語句應用案例:對數字進行分類計數 . 67
3.5 if 多條件分支語句 . 68
3.5.1 if 多條件分支語句標準用法 . 69
3.5.2 if 多條件分支語句應用案例:對分數進行等級判斷 . 70
3.6 break 語句 72
3.6.1 break 在while 循環中的應用 . 72
3.6.2 break 在for 循環中的應用 72
3.6.3 break 語句應用案例:標記達標時的首個月份 . 73
3.7 continue 語句 . 74
3.7.1 continue 在while 循環中的應用 . 74
3.7.2 continue 在for 循環中的應用 . 75
3.7.3 continue 語句應用案例 . 75

第 4 章
Python 有序對象——字符串處理技術 . 77
4.1 字符串切片 78
4.1.1 單字符切片 78
4.1.2 多字符切片 78
4.1.3 字符串切片應用案例:根據身份證號判斷性別 . 79
4.2 字符串統計 81
4.2.1 統計字符串的長度 81
4.2.2 按條件統計字符串 81
4.2.3 字符串統計應用案例:統計各等級出現的次數 . 82
4.3 字符串查找 84
4.3.1 使用index 函數查找字符串位置 . 84
4.3.2 使用find 函數查找字符串位置 85
4.3.3 字符串查找應用案例:截取指定位置的信息 . 86
4.4 字符串替換 87
4.4.1 字符串替換方法 87
4.4.2 字符串替換應用案例:整理不規範的分隔符 . 88
4.5 字符串的拆分與合並 89
4.5.1 拆分字符串為列表 89
4.5.2 合並列表為字符串 90
4.5.3 字符串的拆分與合並應用案例:匯總多表中的不規範數據 . 91

第 5 章
Python 有序對象——列表處理技術 . 93
5.1 列表的創建與刪除 94
5.2 列表切片 94
5.2.1 單元素切片 94
5.2.2 多元素切片 95
5.2.3 列表切片應用案例:按行對數據求平均值 . 96
5.3 列表元素的增加、刪除和修改 97
5.3.1 列表元素的增加 97
5.3.2 列表元素的刪除 99
5.3.3 列表元素的修改 100
5.3.4 列表綜合應用案例:按行對分數求和 100
5.4 列表操作符 102
5.4.1 列表操作符基礎 102
5.4.2 列表操作符應用案例:按條件統計多工作表數據 . 103
5.5 列表推導式 104
5.5.1 標準列表推導式 104
5.5.2 列表推導式變異 105
5.5.3 嵌套列表推導式 106
5.5.4 條件列表推導式 107
5.5.5 列表推導式應用案例1:自動匯總多工作表數據 108
5.5.6 列表推導式應用案例2:匯總多工作簿數據 109
5.6 列表的轉換 110
5.6.1 類對象轉換list . 111
5.6.2 反轉列表reverse . 112
5.6.3 列表復制copy . 112
5.6.4 列表組合zip 114
5.6.5 列表轉換應用案例:給名單中的名字添加序號 . 115
5.7 常用列表統計方式 117
5.7.1 常用統計函數1 . 117
5.7.2 列表統計應用案例1:統計每個人全年工資信息 118
5.7.3 常用統計函數2 . 120
5.7.4 列表統計應用案例2:按等級做計數統計 120

第 6 章
Python 有序對象——元組處理技術 . 122
6.1 元組的創建與刪除 123
6.2 元組的基本操作 123
6.2.1 元組的合並 123
6.2.2 元組的復制 124
6.2.3 元組的循環 126
6.2.4 類對象轉換 127
6.2.5 元組應用案例:將單列數據轉換為多行多列數據 . 127
6.3 常用元組統計函數 130

第 7 章
Python 無序對象——字典處理技術 . 131
7.1 字典的基本操作 132
7.1.1 字典的創建與刪除 133
7.1.2 字典中鍵值的獲取 133
7.2 字典鍵值的增加、刪除和修改 134
7.2.1 字典鍵值的增加 134
7.2.2 字典鍵值的刪除 135
7.2.3 字典鍵值的修改 135
7.2.4 字典鍵值應用案例1:提取各班最後一條記錄 136
7.2.5 字典鍵值應用案例2:按姓名求總分與平均分 137
7.3 字典的轉換 139
7.3.1 類對象轉換dict . 139
7.3.2 dict.fromkeys 轉換法 . 140
7.3.3 字典轉換應用案例:多列求唯一值 141
7.4 字典綜合應用案例 142
7.4.1 字典綜合應用案例1:獲取未完成名單 . 142
7.4.2 字典綜合應用案例2:多工作簿數據合並 144
7.4.3 字典綜合應用案例3:統計數據並分發至不同的工作簿 146

第 8 章
Python 無序對象——集合處理技術 . 149
8.1 集合的創建與刪除 150
8.2 集合元素的添加與刪除 150
8.2.1 集合元素的添加 150
8.2.2 集合元素的刪除 151
8.2.3 集合元素的添加應用案例:多列求唯一值 . 152
8.3 集合之間的大小比較 153
8.3.1 集合的比較運算 153
8.3.2 集合的比較運算應用案例:判斷指定的多個等級是否存在 . 154
8.4 集合的轉換 155
8.4.1 類對象轉換set 155
8.4.2 集合的轉換應用案例:獲取每個工作表中不重復的名單 . 156
8.5 集合的運算 158
8.5.1 並集運算 158
8.5.2 交集運算 159
8.5.3 差集運算 160
8.5.4 對稱差集運算 162
8.5.5 集合運算小結 163
8.6 集合運算應用案例 164
8.6.1 集合的並集運算應用案例:多表多列求唯一值 . 164
8.6.2 集合的交集運算應用案例:多列求相同值 . 166
8.6.3 集合的差集運算應用案例:根據達標月份獲取未達標月份 . 168

第9 章
優化代碼利器——Python 自定義函數 . 171
9.1 自定義函數編寫規範 172
9.1.1 函數的定義 172
9.1.2 自定義函數的創建與調用 172
9.1.3 自定義函數應用案例:平均函數的定義及應用 . 174
9.2 必選參數的寫法及應用 175
9.2.1 必選參數(位置參數) 175
9.2.2 必選參數應用案例:給號碼分段 176
9.3 可選參數的寫法及應用 177
9.3.1 可選參數(默認參數) 178
9.3.2 可選參數應用案例:模擬vlookup 函數的應用 178
9.4 關鍵字參數的寫法及應用 180
9.4.1 關鍵字參數 180
9.4.2 關鍵字參數應用案例:分類合並字符串 182
9.5 不定長參數的寫法及應用 183
9.5.1 不定長參數1 . 184
9.5.2 不定長參數2 . 185
9.5.3 不定長參數應用案例:替換函數增強版 185
9.6 匿名函數的寫法及應用 187
9.6.1 匿名函數的語法結構 187
9.6.2 常見的匿名函數書寫方式 188
9.6.3 匿名函數應用案例:根據身份證號判斷性別 . 189
9.7 將自定義函數存放在.py 文件中 190
9.7.1 將函數定義在單獨的.py 文件中 191
9.7.2 將函數定義在文件夾中 192

第 10 章
Python 高階函數——常用高階函數應用 . 194
10.1 轉換函數map 195
10.1.1 map 函數的第1 個參數為內置函數. 195
10.1.2 map 函數的第1 個參數為自定義函數 . 196
10.1.3 map 函數的第1 個參數為匿名函數. 196
10.1.4 map 函數的第1 個參數是多參數 197
10.1.5 高階函數map 應用案例:將二維表轉換為一維表 197
10.2 篩選函數filter . 199
10.2.1 使用filter 函數篩選列表 200
10.2.2 高階函數filter 應用案例:計算美式排名和中式排名 . 200
10.3 排序函數sort 與sorted 202
10.3.1 排序函數sort . 202
10.3.2 排序函數sorted . 204
10.3.3 高階函數sort 應用案例:對字符串中的數據排序 . 205
10.3.4 高階函數sorted 應用案例:改進美式排名和中式排名的算法 . 206

第 11 章
優秀的 Python 第三方庫——openpyxl 庫 . 209
11.1 安裝openpyxl 庫 . 210
11.2 工作簿的基本操作 210
11.2.1 工作簿的新建 210
11.2.2 工作簿的讀取 211
11.2.3 工作簿操作應用案例:批量新建工作簿 . 212
11.3 工作表的基本操作 213
11.3.1 工作表的新建 213
11.3.2 工作表的讀取 215
11.3.3 工作表的復制 216
11.3.4 工作表的移動 217
11.3.5 工作表的刪除 218
11.3.6 工作表操作應用案例1:批量新建工作表 219
11.3.7 工作表操作應用案例2:批量復制工作表並修改工作表名稱 220
11.3.8 工作表操作應用案例3:拆分多個工作表到多個工作簿 221
11.4 單元格的基本操作 222
11.4.1 單元格的獲取 222
11.4.2 單元格區域的獲取 223
11.4.3 行信息的獲取 225
11.4.4 列信息的獲取 227
11.4.5 單元格的寫入 229
11.4.6 單元格操作應用案例1:製作九九乘法表 231
11.4.7 單元格操作應用案例2:求每個人各科分數之和 232
11.4.8 單元格操作應用案例3:多工作表數據合並 234
11.4.9 單元格操作應用案例4:多工作簿數據合並 235
11.5 工作表的其他操作 237
11.5.1 行和列的插入與刪除 237
11.5.2 單元格的移動 238
11.5.3 刪除行和列應用案例:按條件篩選數據 . 240
11.5.4 插入行和列應用案例:批量製作工資條 . 242

第 12 章
Python 與Excel 結合使用——綜合應用案例 . 244
12.1 綜合應用案例1:自定義排序 . 245
12.2 綜合應用案例2:按行各自排序法 . 246
12.3 綜合應用案例3:整理不規範的數據 248
12.4 綜合應用案例4:將一維表轉換為二維表 249
12.5 綜合應用案例5:根據業績計算提成金額 251
12.6 綜合應用案例6:查詢業績表中每個月的最高業績記錄 252
12.7 綜合應用案例7:二維表的多種匯總方式 254
12.8 綜合應用案例8:按多列分組匯總 . 256
12.9 綜合應用案例9:多工作簿數據匯總 258
12.10 綜合應用案例10:計劃招生與實際招生對比 260

第 13 章
數據分析庫——Pandas . 262
13.1 安裝Pandas 庫 . 263
13.2 Pandas 對Excel 數據的導入與導出 . 263
13.2.1 導入Excel 數據為DataFrame 表格 . 263
13.2.2 導出DataFrame 表格為Excel 工作簿 . 265
13.3 創建DataFrame 表格. 266
13.3.1 DataFrame 表格結構 . 266
13.3.2 使用Series 創建表格 267
13.3.3 使用數組創建表格 268
13.3.4 使用列表創建表格 269
13.3.5 使用字典創建表格 269
13.4 列操作 270
13.4.1 選擇列 270
13.4.2 添加列 271
13.4.3 刪除列 272
13.4.4 重命名列 272
13.4.5 更改列類型 273
13.5 行操作 274
13.5.1 選擇行 274
13.5.2 添加行 275
13.5.3 刪除行 276
13.5.4 篩選行 277
13.5.5 排序行 278
13.6 數據分支判斷 278
13.6.1 Series 分支判斷 . 279
13.6.2 DataFrame 分支判斷 . 279
13.7 數據迭代 280
13.7.1 迭代Series 元素 280
13.7.2 迭代DataFrame 元素 281
13.7.3 迭代DataFrame 行列 282
13.8 聚合與分組 283
13.8.1 聚合函數 283
13.8.2 分組操作 284
13.9 轉換與合並 287
13.9.1 數據轉換 287
13.9.2 數據合並 290
13.10 實例應用 291
13.10.1 分組聚合 291
13.10.2 分組篩選 291
13.10.3 合並多個工作表數據 292
13.10.4 合並多個工作簿數據 293
13.10.5 拆分數據到不同的工作表 295
13.10.6 拆分數據到不同的工作簿 296

最後瀏覽商品 (20)