Python從入門到精通(第2版)
鏈接:pan.baidu.com/s/1wtxnC_XIS7OanigsrXxqAA?pwd=w5g1?
提取碼:w5g1

《Python從入門到精通(第2版)》從初學者角度出發(fā),通過通俗易懂的語言、豐富多彩的實例,詳細介紹了使用Python進行程序開發(fā)應該掌握的各方面技術。全書共分23章,包括初識Python、Python語言基礎、運算符與表達式、流程控制語句、列表和元組、字典和集合、字符串、Python中使用正則表達式、函數(shù)、面向對象程序設計、模塊、異常處理及程序調試、文件及目錄操作、操作數(shù)據(jù)庫、GUI界面編程、Pygame游戲編程、網(wǎng)絡爬蟲開發(fā)、使用進程和線程、網(wǎng)絡編程、Web編程、Flask框架、e起去旅行網(wǎng)站、AI圖像識別工具等內容。所有知識都結合具體實例進行介紹,涉及的程序代碼都給出了詳細的注釋,讀者可輕松領會Python程序開發(fā)的精髓,快速提升開發(fā)技能。除此之外,該書還附配了243集高清教學微視頻及PPT電子教案。
《Python從入門到精通(第2版)》可作為軟件開發(fā)入門者的學習用書,也可作為高等院校相關專業(yè)的教學參考用書,還可供開發(fā)人員查閱、參考使用。
第1篇 基礎知識
第1章 初識Python 2
1.1 Python簡介 2
1.1.1 什么是Python 2
1.1.2 Python的版本 3
1.1.3 Python能做什么 3
1.2 搭建Python開發(fā)環(huán)境 5
1.2.1 開發(fā)環(huán)境概述 5
1.2.2 安裝Python 5
1.2.3 編寫第一個Python程序 10
1.2.4 運行已經(jīng)編寫好的.py文件 11
1.3 Python開發(fā)工具 12
1.3.1 使用自帶的IDLE 12
1.3.2 常用的第三方開發(fā)工具 14
1.4 實踐與練習 16
第2章 Python語言基礎 17
2.1 Python語法特點 17
2.1.1 注釋規(guī)則 17
2.1.2 代碼縮進 21
2.1.3 編碼規(guī)范 22
2.2 Python中的變量 24
2.2.1 保留字與標識符 24
2.2.2 理解Python中的變量 26
2.2.3 定義變量 27
2.3 基本數(shù)據(jù)類型 28
2.3.1 數(shù)字 28
2.3.2 字符串 30
2.3.3 布爾類型 32
2.3.4 數(shù)據(jù)類型轉換 32
2.4 基本輸入和輸出 33
2.4.1 使用input()函數(shù)輸入 33
2.4.2 使用print()函數(shù)輸出 34
2.5 實踐與練習 35
第3章 運算符與表達式 36
3.1 運算符 36
3.1.1 算術運算符 36
3.1.2 賦值運算符 38
3.1.3 比較(關系)運算符 38
3.1.4 邏輯運算符 39
3.1.5 位運算符 40
3.2 運算符的優(yōu)先級 43
3.3 條件表達式 43
3.4 實踐與練習 44
第4章 流程控制語句 45
4.1 程序結構 45
4.2 選擇語句 46
4.2.1 最簡單的if語句 47
4.2.2 if…else語句 48
4.2.3 if…elif…else語句 50
4.2.4 選擇語句的嵌套 52
4.3 循環(huán)語句 53
4.3.1 while循環(huán) 54
4.3.2 for循環(huán) 55
4.3.3 循環(huán)嵌套 57
4.4 break、continue和pass語句 58
4.4.1 break語句 58
4.4.2 continue語句 60
4.4.3 pass語句 61
4.5 實踐與練習 62
第5章 列表和元組 63
5.1 序列概述 63
5.1.1 索引 64
5.1.2 切片 65
5.1.3 序列相加 65
5.1.4 乘法 66
5.1.5 檢查某個元素是否是序列的成員(元素) 67
5.1.6 計算序列的長度、最大值和最小值 67
5.2 列表 68
5.2.1 列表的創(chuàng)建和刪除 68
5.2.2 訪問列表元素 70
5.2.3 遍歷列表 71
5.2.4 添加、修改和刪除列表元素 73
5.2.5 對列表進行統(tǒng)計計算 76
5.2.6 對列表進行排序 77
5.2.7 列表推導式 79
5.2.8 二維列表 80
5.3 元組 83
5.3.1 元組的創(chuàng)建和刪除 83
5.3.2 訪問元組元素 86
5.3.3 修改元組 88
5.3.4 元組推導式 89
5.3.5 元組與列表的區(qū)別 90
5.4 實踐與練習 91
第6章 字典和集合 92
6.1 字典 92
6.1.1 字典的創(chuàng)建和刪除 93
6.1.2 訪問字典 95
6.1.3 遍歷字典 97
6.1.4 添加、修改和刪除字典元素 98
6.1.5 字典推導式 100
6.2 集合 100
6.2.1 創(chuàng)建集合 101
6.2.2 向集合中添加和刪除元素 103
6.2.3 集合的交集、并集和差集運算 104
6.3 實踐與練習 105
第7章 字符串 106
7.1 字符串編碼轉換 106
7.1.1 使用encode()方法編碼 107
7.1.2 使用decode()方法解碼 108
7.2 字符串常用操作 108
7.2.1 拼接字符串 108
7.2.2 計算字符串的長度 110
7.2.3 截取字符串 111
7.2.4 分割、合并字符串 112
7.2.5 檢索字符串 115
7.2.6 字母的大小寫轉換 118
7.2.7 去除字符串中的空格和特殊字符 119
7.2.8 格式化字符串 121
7.3 實踐與練習 124
第2篇 進階提高
第8章 Python中使用正則表達式 126
8.1 正則表達式語法 126
8.1.1 行定位符 126
8.1.2 元字符 127
8.1.3 限定符 127
8.1.4 字符類 128
8.1.5 排除字符 128
8.1.6 選擇字符 128
8.1.7 轉義字符 129
8.1.8 分組 129
8.1.9 在Python中使用正則表達式語法 129
8.2 使用re模塊實現(xiàn)正則表達式操作 130
8.2.1 匹配字符串 130
8.2.2 替換字符串 134
8.2.3 使用正則表達式分割字符串 135
8.3 實踐與練習 136
第9章 函數(shù) 137
9.1 函數(shù)的創(chuàng)建和調用 137
9.1.1 創(chuàng)建一個函數(shù) 137
9.1.2 調用函數(shù) 139
9.2 參數(shù)傳遞 140
9.2.1 了解形式參數(shù)和實際參數(shù) 140
9.2.2 位置參數(shù) 143
9.2.3 關鍵字參數(shù) 144
9.2.4 為參數(shù)設置默認值 145
9.2.5 可變參數(shù) 147
9.3 返回值 149
9.4 變量的作用域 151
9.4.1 局部變量 151
9.4.2 全局變量 152
9.5 匿名函數(shù) 154
9.6 實踐與練習 155
第10章 面向對象程序設計 156
10.1 面向對象概述 156
10.1.1 對象 157
10.1.2 類 157
10.1.3 面向對象程序設計的特點 158
10.2 類的定義和使用 159
10.2.1 定義類 159
10.2.2 創(chuàng)建類的實例 160
10.2.3 創(chuàng)建__init__()方法 160
10.2.4 創(chuàng)建類的成員并訪問 162
10.2.5 訪問限制 166
10.3 屬性 167
10.3.1 創(chuàng)建用于計算的屬性 167
10.3.2 為屬性添加安全保護機制 168
10.4 繼承 170
10.4.1 繼承的基本語法 170
10.4.2 方法重寫 171
10.4.3 派生類中調用基類的__init__()方法 172
10.5 實踐與練習 174
第11章 模塊 175
11.1 模塊概述 175
11.2 自定義模塊 176
11.2.1 創(chuàng)建模塊 176
11.2.2 使用import語句導入模塊 177
11.2.3 使用from…import語句導入模塊 178
11.2.4 模塊搜索目錄 180
11.3 Python中的包 183
11.3.1 Python程序的包結構 183
11.3.2 創(chuàng)建和使用包 183
11.3.3 以主程序的形式執(zhí)行 187
11.4 引用其他模塊 188
11.4.1 導入和使用標準模塊 188
11.4.2 第三方模塊的下載與安裝 190
11.5 實踐與練習 191
第12章 異常處理及程序調試 193
12.1 異常概述 193
12.2 異常處理語句 195
12.2.1 try…except語句 195
12.2.2 try…except…else語句 197
12.2.3 try…except…finally語句 198
12.2.4 使用raise語句拋出異常 199
12.3 程序調試 201
12.3.1 使用自帶的IDLE進行程序調試 201
12.3.2 使用assert語句調試程序 203
12.4 實踐與練習 205
第13章 文件及目錄操作 206
13.1 基本文件操作 206
13.1.1 創(chuàng)建和打開文件 207
13.1.2 關閉文件 209
13.1.3 打開文件時使用with語句 210
13.1.4 寫入文件內容 210
13.1.5 讀取文件 212
13.2 目錄操作 216
13.2.1 os和os.path模塊 216
13.2.2 路徑 218
13.2.3 判斷目錄是否存在 219
13.2.4 創(chuàng)建目錄 220
13.2.5 刪除目錄 222
13.2.6 遍歷目錄 222
13.3 高級文件操作 224
13.3.1 刪除文件 224
13.3.2 重命名文件和目錄 225
13.3.3 獲取文件基本信息 226
13.4 實踐與練習 228
第14章 操作數(shù)據(jù)庫 229
14.1 數(shù)據(jù)庫編程接口 229
14.1.1 連接對象 230
14.1.2 游標對象 231
14.2 使用SQLite 231
14.2.1 創(chuàng)建數(shù)據(jù)庫文件 231
14.2.2 操作SQLite 233
14.3 使用MySQL 236
14.3.1 下載和安裝MySQL 236
14.3.2 安裝PyMySQL 240
14.3.3 連接數(shù)據(jù)庫 241
14.3.4 創(chuàng)建數(shù)據(jù)表 241
14.3.5 操作MySQL數(shù)據(jù)表 243
14.4 實踐與練習 244
第3篇 高級應用
第15章 GUI界面編程 246
15.1 初識GUI 246
15.1.1 什么是GUI 246
15.1.2 常用的GUI框架 247
15.1.3 安裝PyQt5 247
15.2 使用Qt Designer創(chuàng)建窗口 250
15.2.1 創(chuàng)建主窗口 250
15.2.2 設計主窗口 251
15.2.3 預覽窗口效果 252
15.2.4 將.ui文件轉換為.py文件 252
15.2.5 運行主窗口 253
15.3 信號與槽 254
15.3.1 編輯信號與槽 255
15.3.2 自定義槽 256
15.3.3 將自定義槽連接到信號 256
15.4 常用控件 257
15.4.1 Label:標簽控件 257
15.4.2 LineEdit:單行文本框控件 258
15.4.3 TextEdit:多行文本框控件 260
15.4.4 PushButton:按鈕控件 261
15.4.5 CheckBox:復選框控件 263
15.4.6 RadioButton:單選按鈕控件 265
15.4.7 ComboBox:下拉組合框控件 265
15.5 實踐與練習 267
第16章 Pygame游戲編程 268
16.1 初識Pygame 268
16.1.1 安裝Pygame 268
16.1.2 Pygame常用模塊 269
16.2 Pygame基本使用 270
16.3 開發(fā)Flappy Bird游戲 276
16.3.1 游戲簡介 276
16.3.2 游戲分析 276
16.3.3 搭建主框架 276
16.3.4 創(chuàng)建小鳥類 278
16.3.5 創(chuàng)建管道類 280
16.3.6 計算得分 282
16.3.7 碰撞檢測 283
16.4 實踐與練習 285
第17章 網(wǎng)絡爬蟲開發(fā) 286
17.1 初識網(wǎng)絡爬蟲 286
17.1.1 網(wǎng)絡爬蟲概述 286
17.1.2 網(wǎng)絡爬蟲的分類 287
17.1.3 網(wǎng)絡爬蟲的基本原理 288
17.2 網(wǎng)絡爬蟲的常用技術 288
17.2.1 Python的網(wǎng)絡請求 288
17.2.2 請求headers處理 291
17.2.3 網(wǎng)絡超時 292
17.2.4 代理服務 293
17.2.5 HTML解析之BeautifulSoup 294
17.3 網(wǎng)絡爬蟲開發(fā)常用框架Scrapy 297
17.3.1 安裝Scrapy爬蟲框架 297
17.3.2 創(chuàng)建Scrapy項目 298
17.3.3 創(chuàng)建爬蟲 299
17.4 實戰(zhàn)項目:快手爬票 300
17.4.1 快手爬票概述 300
17.4.2 創(chuàng)建快手爬票項目 301
17.4.3 主窗口設計 302
17.4.4 分析網(wǎng)頁請求參數(shù) 308
17.4.5 下載站名文件 309
17.4.6 車票信息的請求與顯示 312
17.5 實踐與練習 318
第18章 使用進程和線程 319
18.1 什么是進程 319
18.2 創(chuàng)建進程的常用方式 320
18.2.1 使用multiprocessing模塊創(chuàng)建進程 320
18.2.2 使用Process子類創(chuàng)建進程 322
18.2.3 使用進程池Pool創(chuàng)建進程 324
18.3 進程間通信 326
18.3.1 隊列簡介 327
18.3.2 多進程隊列的使用 328
18.3.3 使用隊列在進程間通信 329
18.4 什么是線程 330
18.5 創(chuàng)建線程 330
18.5.1 使用threading模塊創(chuàng)建線程 331
18.5.2 使用Thread子類創(chuàng)建線程 332
18.6 線程間通信 333
18.6.1 什么是互斥鎖 334
18.6.2 使用互斥鎖 334
18.6.3 使用隊列在線程間通信 336
18.7 實踐與練習 337
第19章 網(wǎng)絡編程 338
19.1 網(wǎng)絡基礎 338
19.1.1 為什么要使用通信協(xié)議 338
19.1.2 TCP/IP簡介 339
19.1.3 UDP簡介 340
19.1.4 socket簡介 341
19.2 TCP編程 342
19.2.1 創(chuàng)建TCP服務器 342
19.2.2 創(chuàng)建TCP客戶端 343
19.2.3 執(zhí)行TCP服務器和客戶端 344
19.3 UDP編程 347
19.3.1 創(chuàng)建UDP服務器 347
19.3.2 創(chuàng)建UDP客戶端 348
19.3.3 執(zhí)行UDP服務器和客戶端 348
19.4 實踐與練習 349
第20章 Web編程 350
20.1 Web基礎 350
20.1.1 HTTP協(xié)議 350
20.1.2 Web服務器 351
20.1.3 前端基礎 353
20.1.4 靜態(tài)服務器 355
20.2 WSGI接口 359
20.2.1 CGI簡介 359
20.2.2 WSGI簡介 360
20.2.3 定義WSGI接口 360
20.2.4 運行WSGI服務 361
20.3 Web框架 364
20.3.1 什么是Web框架 364
20.3.2 Python中常用的Web框架 364
20.4 實踐與練習 365
第21章 Flask框架 366
21.1 Flask簡介 366
21.1.1 安裝虛擬環(huán)境 366
21.1.2 安裝Flask 368
21.1.3 第一個Flask程序 368
21.2 Flask基礎 369
21.2.1 開啟調試模式 369
21.2.2 路由 370
21.2.3 靜態(tài)文件 372
21.2.4 藍圖 372
21.3 模板 373
21.3.1 渲染模板 373
21.3.2 變量 374
21.3.3 控制結構 375
21.4 Web表單 376
21.4.1 CSRF保護和驗證 377
21.4.2 表單類 377
21.4.3 把表單渲染成HTML 379
21.5 實踐與練習 381
第4篇 項目實戰(zhàn)
第22章 e起去旅行網(wǎng)站 384
22.1 系統(tǒng)功能設計 384
22.1.1 系統(tǒng)功能結構 384
22.1.2 系統(tǒng)業(yè)務流程 385
22.2 系統(tǒng)開發(fā)必備 386
22.2.1 系統(tǒng)開發(fā)環(huán)境 386
22.2.2 文件夾組織結構 386
22.3 數(shù)據(jù)庫設計 387
22.3.1 數(shù)據(jù)庫概要說明 387
22.3.2 數(shù)據(jù)表模型 387
22.3.3 數(shù)據(jù)表關系 389
22.4 前臺用戶模塊設計 389
22.4.1 會員注冊功能實現(xiàn) 389
22.4.2 會員登錄功能實現(xiàn) 397
22.4.3 會員退出功能實現(xiàn) 398
22.5 前臺首頁模塊設計 398
22.5.1 推薦景區(qū)功能實現(xiàn) 400
22.5.2 推薦地區(qū)功能實現(xiàn) 402
22.5.3 搜索景區(qū)功能實現(xiàn) 403
22.6 景區(qū)模塊設計 406
22.6.1 查看景區(qū)功能實現(xiàn) 406
22.6.2 查看游記功能實現(xiàn) 408
22.6.3 收藏景區(qū)功能實現(xiàn) 409
22.6.4 查看收藏景區(qū)功能實現(xiàn) 412
22.7 關于我們模塊設計 415
22.8 后臺模塊設計 419
22.8.1 管理員登錄功能實現(xiàn) 419
22.8.2 景區(qū)管理功能實現(xiàn) 421
22.8.3 地區(qū)管理功能實現(xiàn) 432
22.8.4 游記管理功能實現(xiàn) 432
22.8.5 會員管理功能實現(xiàn) 433
22.8.6 日志管理功能實現(xiàn) 433
第23章 AI圖像識別工具 435
23.1 需求分析 435
23.2 系統(tǒng)設計流程 435
23.3 系統(tǒng)開發(fā)必備 436
23.3.1 系統(tǒng)開發(fā)環(huán)境 436
23.3.2 文件夾組織結構 436
23.4 開發(fā)前的準備工作 437
23.4.1 申請百度AI接口 437
23.4.2 urllib、urllib.request模塊 438
23.4.3 json模塊 439
23.5 AI圖像識別工具的開發(fā) 440
23.5.1 根據(jù)項目設計制作窗體 440
23.5.2 添加分類 440
23.5.3 選擇識別的圖片 441
23.5.4 銀行卡圖像識別 443
23.5.5 植物圖像識別 444
23.5.6 復制識別結果到剪貼板中 445
查看全部↓
精彩書摘
第2 章
Python 語言基礎
熟練掌握一種編程語言,最好的方法就是充分了解它,并掌握其基礎知識,另外,還需要親自體
驗,多編寫代碼,方可熟能生巧。
從本章開始,我們將正式踏上Python 開發(fā)之旅,體驗Python 帶給我們的簡單、快樂。本章將先對
Python 的語法特點進行詳細介紹,然后介紹Python 中的保留字、標識符、變量、基本數(shù)據(jù)類型,以及
數(shù)據(jù)類型間的轉換,最后介紹如何通過輸入和輸出函數(shù)進行交互。
本章知識架構及重難點如下。