《Python 3程式開發指南(第2版修訂版)》是2018年5月人民郵電出版社出版的圖書,作者是[美]薩默菲爾德(Mark Summerfield)。
基本介紹
- 中文名:Python 3程式開發指南(第2版修訂版)
- 作者:[美]薩默菲爾德(Mark Summerfield)
- 出版時間:2018年5月
- 出版社:人民郵電出版社
- 頁數:518 頁
- ISBN:9787115383389
- 定價:69 元
- 開本:16 開
- 裝幀:平裝
內容簡介,圖書目錄,
內容簡介
Python是一種腳本語言,在各個領域得到了日益廣泛的套用。《Python 3程式開發指南(第 2版 修訂版)》全面深入地對Python語言進行了講解。
《Python 3程式開發指南(第 2版 修訂版)》首先講述了構成Python語言的8個關鍵要素,之後分章節對其進行了詳盡的闡述,包括數據類型、控制結構與函式、模組、檔案處理、調試、進程與執行緒、網路、資料庫、正則表達式、GUI程式設計等各個方面,並介紹了其他一些相關主題。全書內容以實例講解為主線,每章後面附有練習題,便於讀者更好地理解和掌握所講述的內容。
《Python 3程式開發指南(第 2版 修訂版)》適合於作為Python語言教科書使用,對Python程式設計人員也有一定的參考價值。
圖書目錄
第 1章 過程型程式設計快速入門 1
1.1 創建並運行Python程式 1
1.2 Python的關鍵要素 5
1.2.1 要素#1:數據類型 6
1.2.2 要素#2:對象引用 7
1.2.3 要素#3:組合數據類型 9
1.2.4 元素#4:邏輯操作符 12
1.2.5 要素#5:控制流語句 16
1.2.6 要素#6:算術操作符 20
1.2.7 要素#7:輸入/輸出 23
1.2.8 要素#8:函式的創建與調用 25
1.3 實例 27
1.3.1 bigdigits.py 28
1.3.2 generate_grid.py 30
1.4 總結 33
1.5 練習 35
第 2章 數據類型 38
2.1 標識符與關鍵字 38
2.2 Integral類型 41
2.2.1 整數 41
2.2.2 布爾型 44
2.3 浮點類型 44
2.3.1 浮點數 45
2.3.2 複數 48
2.3.3 十進制數字 49
2.4 字元串 50
2.4.1 比較字元串 53
2.4.2 字元串分片與步距 54
2.4.3 字元串操作符與方法 56
2.4.4 使用str.format( )方法進行字元串格式化 62
2.4.5 字元編碼 73
2.5 實例 75
2.5.1 quadratic.py 75
2.5.2 csv2html.py 78
2.6 總結 82
2.7 練習 84
第3章 組合數據類型 86
3.1 序列類型 86
3.1.1 元組 87
3.1.2 命名的元組 89
3.1.3 列表 91
3.1.4 列表內涵 96
3.2 集合類型 98
3.2.1 集合 98
3.2.2 集合內涵 102
3.2.3 固定集合 102
3.3 映射類型 103
3.3.1 字典 103
3.3.2 字典內涵 110
3.3.3 默認字典 111
3.4 組合數據類型的疊代與複製 113
3.4.1 疊代子、疊代操作與函式 113
3.4.2 組合類型的複製 121
3.5 實例 123
3.5.1 generate_usernames.py 123
3.5.2 statistics.py 126
3.6 總結 130
3.7 練習 131
第4章 控制結構與函式 133
4.1 控制結構 133
4.1.1 條件分支 133
4.1.2 循環 135
4.2 異常處理 136
4.2.1 捕獲與產生異常 136
4.2.2 自定義異常 141
4.3 自定義函式 144
4.3.1 名稱與Docstrings 148
4.3.2 參數與參數拆分 149
4.3.3 存取全局範圍的變數 152
4.3.4 Lambda函式 153
4.3.5 斷言 155
4.4 實例:make_html_skeleton.py 156
4.5 總結 162
4.6 練習 162
第5章 模組 165
5.1 模組與包 165
5.1.1 包 169
5.1.2 自定義模組 171
5.2 Python標準庫概覽 181
5.2.1 字元串處理 181
5.2.2 io.StringIO類 182
5.2.3 命令行程式設計 183
5.2.4 數學與數字 184
5.2.5 時間與日期 184
5.2.6 實例:calendar、datetime與time模組 185
5.2.7 算法與組合數據類型 185
5.2.8 檔案格式、編碼與數據持久性 187
5.2.9 檔案、與進程處理 190
5.2.10 網路與Internet程式設計 192
5.2.11 XML 193
5.2.12 其他模組 195
5.3 總結 196
5.4 練習 198
第6章 面向對象程式設計 200
6.1 面向對象方法 200
6.2 自定義類 204
6.2.1 屬性與方法 205
6.2.2 繼承與多態 209
6.2.3 使用特性進行屬性存取控制 211
6.2.4 創建完全整合的數據類型 213
6.3 自定義組合類 225
6.3.1 創建聚集組合數據的類 225
6.3.2 使用聚集創建組合類 231
6.3.3 使用繼承創建組合類 237
6.4 總結 244
6.5 練習 245
第7章檔案處理 247
7.1 二進制數據的讀寫 251
7.1.1 帶可選壓縮的Pickle 252
7.1.2 帶可選壓縮的原始二進制數據 256
7.2 文本檔案的寫入與分析 263
7.2.1 寫入文本 263
7.2.2 分析文本 265
7.2.3 使用正則表達式分析文本 268
7.3 寫入與分析XML檔案 270
7.3.1 元素樹 270
7.3.2 DOM 274
7.3.3 手動寫入XML 277
7.3.4 使用SAX分析XML 278
7.4 隨機存取二進制檔案 281
7.4.1 通用的BinaryRecordFile類 281
7.4.2 實例:BikeStock模組的類 289
7.5 總結 292
7.6 練習 293
第8章 高 級程式設計技術 295
8.1 過程型程式設計進階 296
8.1.1 使用字典進行分支 296
8.1.2 生成器表達式與函式 297
8.1.3 動態代碼執行與動態導入 300
8.1.4 局部函式與遞歸函式 306
8.1.5 函式與方法修飾器 311
8.1.6 函式注釋 314
8.2 面向對象程式設計進階 317
8.2.1 控制屬性存取 317
8.2.2 函子 320
8.2.3 上下文管理器 322
8.2.4 描述符 325
8.2.5 類修飾器 330
8.2.6 抽象基類 333
8.2.7 多繼承 340
8.2.8 元類 342
8.3 函式型程式設計 346
8.3.1 偏函式 348
8.3.2 協程 349
8.4 實例:Valid.py 356
8.5 總結 359
8.6 練習 360
第9章 調試、測試與Profiling 361
9.1 調試 361
9.1.1 處理語法錯誤 362
9.1.2 處理運行時錯誤 363
9.1.3 科學的調試 367
9.2 單元測試 371
9.3 Profiling 377
9.4 小結 382
第 10章 進程與執行緒 383
10.1 使用多進程模組 384
10.2 將工作分布到多個執行緒 388
10.2.1 實例:執行緒化的單詞尋找程式 389
10.2.2 實例:一個執行緒化的重複檔案發現程式 392
10.3 總結 396
10.4 練習 397
第 11章 網路 399
11.1 創建TCP客戶端 400
11.2 創建TCP伺服器 406
11.3 總結 412
11.4 練習 412
第 12章 資料庫程式設計 414
12.1 DBM資料庫 414
12.2 SQL資料庫 418
12.3 總結 425
12.4 練習 425
第 13章 正則表達式 427
13.1 Python的正則表達式語言 428
13.1.1 字元與字元類 428
13.1.2 量詞 429
13.1.3 組與捕獲 431
13.1.4 斷言與標記 433
13.2 正則表達式模組 436
13.3 總結 444
13.4 練習 445
第 14章 分析簡介 446
14.1 BNF語法與分析的術語 447
14.2 手動編寫分析器 451
14.2.1 簡單的鍵-值數據分析 451
14.2.2 播放列表數據分析 454
14.2.3 Blocks域特定語言的分析 456
14.3 使用PyParsing進行更Python化的分析 464
14.3.1 PyParsing快速介紹 465
14.3.2 簡單的鍵-值數據分析 468
14.3.3 播放列表數據分析 470
14.3.4 分析塊域特定語言 471
14.3.5 分析一階邏輯 476
14.4 使用PLY進行Lex/Yacc風格的分析 481
14.4.1 簡單的鍵-值數據分析 483
14.4.2 播放列表數據分析 485
14.4.3 分析塊域特定語言 487
14.4.4 分析一階邏輯 489
14.5 小結 493
14.6 練習 494
第 15章 GUI程式設計介紹 496
15.1 對話框風格的程式 499
15.2 主視窗風格的程式 504
15.2.1 創建一個主視窗 504
15.2.2 創建自定義對話框 514
15.3 總結 517
15.4 練習 518