●第1章 感受Python精彩世界 1
1.1 Python概述 1
1.2 選擇Python的理由 2
1.3 搭建Python的編程環境 2
1.3.1 在Windows下安裝Python 3
1.3.2 在Linux下安裝Python 4
1.4 Python自帶的開發工具IDLE 5
1.5 交互式運行Python命令行 6
1.6 小試身手——編輯和運行Python程序 7
1.7 疑難解惑 9
第2章 Python的基礎語法 10
2.1 程序結構 10
2.1.1 縮進分層 10
2.1.2 換行問題 12
2.1.3 代碼注釋 13
2.2 Python的輸入和輸出 13
2.2.1 接收鍵盤輸入 13
2.2.2 輸出處理結果 14
2.3 變量 16
2.4 標識符與保留字 17
2.5 簡單數據類型 18
2.5.1 數字類型 18
2.5.2 字符串類型 21
2.5.3 數據類型的相互轉換 22
2.6 Python結構數據類型 23
2.6.1 集合類型(Sets) 23
2.6.2 列表類型(List) 23
2.6組類型(Tuple) 24
2.6.4 字典類型(Dictionary) 25
2.7 運算符和優先級 26
2.7.1 算術運算符 26
2.7.2 比較運算符 27
2.7.3 賦值運算符 28
2.7.4 邏輯運算符 29
2.7.5 位運算符 31
2.7.6 成員運算符 32
2.7.7 身份運算符 33
2.7.8 運算符的優先級 33
2.8 疑難解惑 36
第3章 組和字典的基本操作 37
3.1 列表的基本操作 37
3.1.1 列表對像的特性 37
3.1.2 列表的常見操作 38
3.1.3 列表的操作符+和* 40
3.1.4 內置的函數和方法 41
3.1.5 遞推式構造列表 46
3組的基本操作 47
3.2組對像的常用操作 47
3.2組的內置函數 50
3.3 字典的基本操作 51
3.3.1 字典對像的常用操作 51
3.3.2 字典的內置函數和方法 53
3.4 疑難解惑 57
第4章 熟練操作字符串 59
4.1 字符串的常用操作 59
4.1.1 訪問字符串中的值 59
4.1.2 分割指定範圍的字符 60
4.1.3 更新字符串 61
4.1.4 使用轉義字符 62
4.2 熟練使用字符串運算符 64
4.3 格式化字符串 66
4.4 內置的字符串方法 68
4.4.1 capitalize()方法 68
4.4.2 count()方法 69
4.4.3 find()方法 70
4.4.4 index()方法 70
4.4.5 isalnum()方法 71
4.4.6 join()方法 71
4.4.7 isalpha()方法 72
4.4.8 isdigit()方法 72
4.4.9 low()方法 73
4.4.10 max()方法 74
4.4.11 min()方法 74
4.4.12 replace()方法 75
4.4.13 swapcase()方法 75
4.4.14 title()方法 76
4.5 疑難解惑 77
第5章 程序的控制結構 78
5.1 程序流程概述 78
5.2 基本處理流程 78
5.3 多樣的賦值語句 80
5.3.1 基本賦值 80
5.3.2 序列解包 81
5.3.3 鏈式賦值 82
5.3.4 其他賦值方式 83
5.4 順序結構 85
5.5 布爾表達式 86
5.6 選擇結構與語句 88
5.6.1 選擇結構 88
5.6.2 if語句 88
5.6.3 if嵌套 89
5.6.4 多重條件判斷 90
5.7 循環控制語句 91
5.7.1 while語句 91
5.7.2 for語句 93
5.7.3 continue語句和else語句 95
5.7.4 pass語句 96
5.8 疑難解惑 96
第6章 函數 100
6.1 使用函數的優勢 100
6.2 調用內置函數 101
6.3 定義函數 105
6.4 函數的參數 107
6.4.1 必需參數 107
6.4.2 關鍵字參數 108
6.4.3 默認參數 109
6.4.4 可變參數 110
6.5 有返回值的函數和無返回值的函數 111
6.6 形參和實參 113
6.7 變量作用域 114
6.8 返回函數 116
6.9 遞歸函數 119
6.9.1 使用遞歸函數 119
6.9.2 利用遞歸函數解決漢諾塔問題 120
6.9.3 防止棧溢出 122
6.10 匿名函數 123
6.11 偏函數 124
6.12 函數的內置屬性和命名空間 125
6.13 輸入和輸出函數 127
6.14 疑難解惑 128
第7章 對像與類 130
7.1 理解面向對像程序設計 130
7.1.1 什麼是對像 130
7.1.2 面向對像的特征 132
7.1.3 什麼是類 132
7.2 類的定義 132
7.3 類的構造方法和內置屬性 133
7.4 類實例 136
7.4.1 創建類實例 136
7.4.2 類實例的內置屬性 140
7.5 類的內置方法 141
7.6 重載運算符 151
7.7 類的繼承 152
7.8 類的多態 156
7.9 類的封裝 158
7.10 Python的垃圾回收機制 160
7.11 疑難解惑 161
第8章 程序調試和異常處理 163
8.1 什麼是異常 163
8.2 常見錯誤和異常 165
8.3 熟悉內置異常 169
8.4 使用try…except語句處理異常 175
8.5 全捕捉 177
8.6 異常中的else 178
8.7 異常中的pass 179
8.8 異常類的實例 179
8.9 清除異常 181
8.10 拋出異常 182
8.10.1 raise語句 182
8.10.2 結束解釋器的運行 183
8.10.3 離開嵌套循環 184
8.11 自定義異常 186
8.12 程序調試 187
8.12.1 使用assert語句 187
8.12.2 使用__debug__內置變量 188
8.13 疑難解惑 190
第9章 模塊與類庫 191
9.1 什麼是模塊 191
9.2 什麼是類庫 193
9.3 模塊和類庫的基本操作 194
9.4 模塊的名稱空間 195
9.5 自定義模塊 197
9.6 將模塊打包 198
9.7 熟悉運行期服務模塊組 200
9.8 掌握字符串處理模塊 211
9.9 疑難解惑 213
第10章 日期和時間 214
10.1 認識日期和時間 214
10.1.1 時間戳 214
10.1.2 struct_t組 215
10.1.3 格式化時間 216
10.2 日歷模塊 218
10.3 time模塊 220
10.3.1 localtime([secs])函數 220
10.3.2 gmtime([secs])函數 221
10.3.3 mktime ([tuple ])函數 221
10.3.4 ctime([secs])函數 221
10.3.5 sleep(secs)函數 222
10.3.6 strptime(string [,format])函數 222
10.4 datetime模塊 223
10.4.1 date類 223
10.4.2 time類 227
10.4.3 datetime類 229
10.4.4 timedelta類 232
10.4.5 tzinfo類 233
10.5 日期和時間的常用操作 234
10.6 疑難解惑 237
第11章 迭代器、生成器和裝飾器 239
11.1 迭代器 239
11.1.1 什麼是可迭代對像 239
11.1.2 什麼是迭代器 240
11.1.3 自定義迭代器 241
11.1.4 內置迭代器工具 242
11.2 生成器 247
11.3 裝飾器 249
11.3.1 什麼是裝飾器 249
11.3.2 裝飾函數 250
11.3.3 裝飾類 251
11.4 疑難解惑 252
第12章 文件與文件繫統 253
12.1 打開文件 253
12.2 讀取文件 254
12.2.1 讀取文件的read()方法 255
12.2.2 逐行讀取的readline()方法 255
12.2.3 返回文件各行內容的readlines()方法 256
12.2.4 返回文件當前位置的tell()方法 257
12.2.5 截斷文件的truncate()方法 258
12.2.6 設置文件當前位置的seek()方法 259
12.3 寫入文件 259
12.3.1 將字符串寫入到文件 259
12.3.2 寫入多行writelines() 261
12.3.3 修改文件內容 261
12.3.4 附加到文件 262
12.4 關閉和刷新文件 263
12.4.1 關閉文件 263
12.4.2 刷新文件 263
12.5 疑難解惑 264
第13章 基於tkinter的GUI編程 265
13.1 常用的Python GUI 265
13.2 使用tkinter創建GUI程序 266
13.3 認識tkinter的控件 268
13.4 幾何位置的設置 273
13.4.1 pack()方法 273
13.4.2 grid()方法 276
13.4.3 place()方法 277
13.5 tkinter的事件 279
13.5.1 事件的屬性 279
13.5.2 事件綁定方法 280
13.5.3 鼠標事件 280
13.5.4 鍵盤事件 282
13.5.5 繫統協議 284
13.6 Button控件 285
13.7 Canvas控件 287
13.8 Checkbutton控件 292
13.9 Entry控件 293
13.10 Label控件 294
13.11 Listbox控件 297
13.12 Menu控件 298
13.13 Message控件 303
13.14 Radiobutton控件 304
13.15 Scale控件 307
13.16 Scrollbar控件 309
13.17 Text控件 310
13.18 Toplevel控件 312
13.19 對話框 313
13.19.1 messagebox模塊 314
13.19.2 filedialog模塊 316
13.19.3 colorchooser模塊 317
13.20 疑難解惑 319
第14章 Python的高級技術 321
14.1 圖像的處理 321
14.1.1 下載與安裝Pillow模塊 321
14.1.2 加載圖像文件 323
14.1.3 圖像文件的屬性 325
14.1.4 復制與粘貼圖像 327
14.1.5 圖像的幾何轉換 329
14.1.6 存儲圖像文件 330
14.2 語音的處理 331
14.2.1 winsound模塊 331
14.2.2 sndhdr模塊 332
14.2.3 wave模塊 334
14.2.4 aifc模塊 337
14.3 科學計算——numpy模塊 337
14.3.1 下載和安裝numpy模塊 338
14.3.2 array對像 338
14.3.3 ufunc對像 340
14.4 正則表達式 341
14.4.1 正則表達式的特定字符 341
14.4.2 re模塊的方法 342
14.5 線程 345
14.5.1 Python多線程 345
14.5.2 _thread模塊 346
14.5.3 threading模塊 347
14.6 疑難解惑 348
第15章 數據庫的應用 350
15.1 平面數據庫 350
15.2 內置數據庫SQLite 352
15.3 操作MySQL數據庫 354
15.3.1 安裝PyMySQL 355
15.3.2 連接MySQL數據庫 356
15.3.3 創建數據表 356
15.3.4 插入數據 357
15.3.5 查詢數據 358
15.3.6 更新數據 359
15.3.7 刪除數據 359
15.4 疑難解惑 360
第16章 網絡編程的應用 362
16.1 網絡概要 362
16.2 socket模塊 364
16.2.1 認識socket模塊 364
16.2.2 創建socket連接 365
16.3 HTTP庫 367
16.3.1 socketserver模塊 367
16.3.2 server模塊 369
16.3.3 client模塊 371
16.4 urllib庫 372
16.4.1 request模塊 372
16.4.2 parse模塊 375
16.5 ftplib模塊 375
16.6 電子郵件服務協議 377
16.6.1 smptlib模塊 378
16.6.2 poplib模塊 380
16.6.3 imaplib模塊 382
16.7 新聞組 382
16.8 連接遠程計算機 384
16.9 疑難解惑 385
第17章 CGI程序設計 387
17.1 CGI簡介 387
17.2 CGI模塊 388
17.2.1 輸入和輸出 388
17.2.2 CGI模塊的函數 390
17.3 創建和執行腳本 390
17.3.1 傳輸信息給Python腳本 390
17.3.2 表單域的處理 391
17.3.3 Session 401
17.3.4 創建輸出到瀏覽器 401
17.4 使用cookie對像 402
17.4.1 了解cookie 402
17.4.2 讀取cookie信息 402
17.5 使用模板 403
17.6 上傳和下載文件 407
17.7 腳本的調試 409
17.8 疑難解惑 412
第18章 Web網站編程 413
18.1 XML編程基礎 413
18.1.1 XPath簡介 413
18.1.2 XSLT簡介 414
18.2 XML語法基礎 415
18.2.1 XML的基本應用 415
18.2.2 XML文檔組成和聲明 417
18.2.3 素介紹 418
18.3 Python解析XML 421
18.3.1 使用SAX解析XML 421
18.3.2 使用DOM解析XML 424
18.4 XDR數據交換格式 425
18.5 JSON數據解析 429
18.6 Python解析HTML 430
18.7 疑難解惑 437
第19章 遊戲應用——開發彈球遊戲 438
19.1 準備工作 438
19.1.1 配置Python開發環境 438
19.1.2 選擇合適的編輯器 439
19.1.3 鞏固知識點 439
19.2 需求分析 439
19.3 彈球遊戲中的算法 440
19.4 具體功能實現 440
19.5 項目測試 446
第20章 網絡爬蟲應用——豆瓣電影評論的情感分析 447
20.1 什麼是爬蟲 447
20.2 Python如何爬取數據 448
20.3 項目分析 448
20.4 環境配置 449
20.4.1 下載並安裝庫文件 449
20.4.2 檢查庫文件是否安裝成功 452
20.5 具體功能實現 453
20.6 項目測試 456
第21章 大數據分析應用——開發數據智能分類繫統 457
21.1 項目分析 457
21.2 配置環境 458
21.3 具體功能實現 459
21.4 項目測試 461
第22章 數據挖掘應用——話題模型和詞雲可視化 464
22.1 項目分析 464
22.2 配置環境 465
22.3 具體功能實現 467
22.4 項目測試 469
本書用於Python編程快速入門,注重實戰操作,幫助讀者循序漸進地掌握Python 3.7開發中的各項技術。本書提供了所有實例的源代碼,以供讀者直接查看和調用。同時,還提供了近20小時培訓班形式的視頻教學錄像,詳細講解書中每一個知識點和數據庫操作技巧。另外,本書還提供技術支持QQ群,專為讀者答疑解難。
本書分為22章,內容包括認識Python的概念、開發環境配置方法、Python的基礎語法、組和字典、字符串、程序的控制結構、使用函數的方法、對像與類、程序調試和異常處理、模塊與類庫、日期和時間、迭代器、生成器與裝飾器、文件與文件繫統、基於tKinter的GUI編程、Python高級技術、數據庫應用、網絡編程、CGI程序設計和Web網站編程,最後通過4個綜合項目案例,進一步講述Python在實際工作中的應用。
本書既適合Python初學者、Python編程愛等