Python 3.6零基礎入門與實戰

Python 3.6零基礎入門與實戰

《Python 3.6零基礎入門與實戰》是2018年10月清華大學出版社出版的圖書,作者是王啟明、羅從良。

基本介紹

  • 書名:Python 3.6零基礎入門與實戰
  • 作者:王啟明、羅從良
  • ISBN:9787302509301
  • 定價:59元
  • 出版社:清華大學出版社
  • 出版時間:2018年10月
內容簡介,圖書目錄,

內容簡介

隨著大數據技術的發展及Python在人工智慧領域的火熱套用,Python得到越來越多的套用。本書就是在這個背景下編寫的,是一本Python 3.6入門教材,特別適合想直接切入爬蟲編程及大數據分析處理的讀者學習使用。本書贈送示例原始碼與教學視頻。
本書分為16章,主要內容包括開發環境、數據結構、函式、面向對象、多執行緒、模組、包、GUI模組、圖形模組、正則模組、檔案處理模組、網路編程模組和爬蟲模組等,並且為每個模組提供了實戰示例,最後用兩章來介紹資料庫編程實戰和爬蟲框架實戰。
本書內容詳盡、示例豐富,適合廣大Python入門讀者和Python開發人員閱讀,同時也可作為高等院校和培訓學校計算機相關專業的師生教學參考。

圖書目錄

第1章 搭建Python開發環境 1
1.1 Python的版本說明 1
1.2 Python的安裝 2
1.2.1 Windows下安裝Python 2
1.2.2 Linux下安裝Python 6
1.3 打開Python的方式 8
1.4 互動模式解釋器 9
1.5 第一個Python程式Hello World 10
1.5.1 互動式 10
1.5.2 腳本式 10
1.6 Python開發工具 11
1.6.1 Python自帶集成開發環境IDEL 11
1.6.2 安裝PyCharm集成開發環境 14
1.6.3 使用PyCharm集成開發環境 21
1.7 注意Python的縮進 22
第2章 Python中的數據與結構 24
2.1 Python中的標準數據類型 24
2.2 變數 25
2.3 數字 26
2.3.1 使用整型 26
2.3.2 使用浮點型 27
2.3.3 使用布爾型 28
2.3.4 使用複數型 29
2.4 字元串 29
2.4.1 字元串的單引號、雙引號、三引號 29
2.4.2 字元串的截取 30
2.4.3 字元串的拼接 31
2.4.4 字元串的各種常用運算符 32
2.4.5 字元串的轉義 33
2.4.6 字元串的格式化符號 34
2.4.7 字元串的內置函式 37
2.5 列表 39
2.5.1 使用列表 39
2.5.2 訪問列表 40
2.5.3 列表常用的內置函式 41
2.5.4 列表排序 43
2.5.5 刪除列表 44
2.5.6 獲取列表中的最大值和最小值 45
2.5.7 列表常用運算符 45
2.6 元組 46
2.6.1 使用元組 46
2.6.2 訪問元組 47
2.6.3 元組常用的內置函式 47
2.6.4 刪除元組 48
2.6.5 獲取元組中的最大值和最小值 48
2.6.6 元組常用運算符 48
2.6.7 元組與列表的轉換 49
2.7 字典 49
2.7.1 使用字典 49
2.7.2 訪問字典 50
2.7.3 字典常用的內置函式 50
2.7.4 刪除字典 52
2.7.5 字典常用運算符 53
2.8 集合 53
2.8.1 使用集合 54
2.8.2 集合常用的內置函式 54
2.8.3 集合常用運算符(交集、並集、差集、對稱差集) 56
2.9 推導式 57
2.9.1 初識推導 57
2.9.2 嵌套推導 58
2.10 數據結構實戰:文本統計分析 59
2.10.1 文本統計功能 59
2.10.2 文本比較功能 60
第3章 結構語句 62
3.1 順序、選擇和循環 62
3.1.1 順序結構 62
3.1.2 選擇結構 63
3.1.3 循環結構 64
3.2 用if選擇 64
3.2.1 選擇語句格式 65
3.2.2 選擇語句詳解 66
3.2.3 選擇語句的嵌套 66
3.3 用while循環 67
3.3.1 while語句基本格式 67
3.3.2 while語句的套用 68
3.3.3 無限循環(死循環) 69
3.3.4 帶else的while循環 70
3.4 用for循環 71
3.4.1 for語句基本格式 71
3.4.2 for語句的套用 71
3.4.3 for與range結合遍歷數字序列 72
3.5 中斷語句break、continue 73
3.5.1 break語句 73
3.5.2 continue語句 74
3.6 循環實戰:九九乘法表 75
第4章 函式 77
4.1 使用函式 77
4.1.1 定義函式 77
4.1.2 函式的返回值 78
4.1.3 函式的嵌套 78
4.2 函式的參數 79
4.2.1 形參、實參 79
4.2.2 必要參數 79
4.2.3 有默認值的參數 80
4.2.4 關鍵字參數 81
4.2.5 不定長參數(可變參數) 82
4.2.6 各種參數組合 83
4.3 全局變數、局部變數 83
4.3.1 全局和局部的概念 83
4.3.2 函式中局部變數的作用域 84
4.3.3 global全局變數 84
4.4 匿名函式 85
4.4.1 使用匿名函式 85
4.4.2 匿名函式的參數默認值 86
4.5 函式實戰:八皇后問題 86
第5章 面向對象編程 92
5.1 面向對象基礎 92
5.2 定義與使用類 93
5.2.1 類的定義 93
5.2.2 類的構造方法和析構方法 94
5.2.3 類的私有屬性 95
5.2.4 類的私有方法 96
5.2.5 一個完整的類 96
5.3 類與類的關係 97
5.3.1 單繼承 98
5.3.2 多繼承 99
5.3.3 類的關聯和依賴 99
5.3.4 類的聚合和複合 101
5.4 重寫 102
5.5 魔術方法 102
5.5.1 魔術方法的概念 102
5.5.2 魔術方法的套用 103
5.6 疊代器 106
5.7 生成器 107
5.7.1 生成器的概念 107
5.7.2 生成器的套用 107
5.8 裝飾器 108
5.8.1 裝飾器基礎 108
5.8.2 不帶參數的裝飾器 109
5.8.3 帶參數的裝飾器 110
5.8.4 多個裝飾器裝飾一個函式 111
5.9 上下文管理器與with語句 112
5.9.1 上下文管理器的幾個概念 112
5.9.2 上下文管理器的套用 113
5.9.3 自定義上下文管理器 113
5.10 面向對象實戰:數字圖形 114
5.10.1 需求分析 114
5.10.2 程式開發 118
5.10.3 程式入口 123
第6章 程式異常與調試 124
6.1 識別異常 124
6.1.1 異常的概念 124
6.1.2 語法引出的異常 125
6.1.3 運行時引出的異常 125
6.1.4 分析異常提示信息 125
6.2 Python中處理異常的語法 126
6.3 處理異常的細節 127
6.3.1 except語句的多種形式 127
6.3.2 拋出異常(引發異常)raise 130
6.4 自定義異常 130
6.5 調試程式 131
6.5.1 IDLE的簡單調試 131
6.5.2 利用日誌模組logging調試 132
6.5.3 利用pdb調試 133
6.6 異常實戰:計算機猜數 135
6.6.1 需求分析 135
6.6.2 算法分析 136
6.6.3 編程實現 138
6.6.4 異常處理 141
6.6.5 異常類定義 141
6.6.6 拋出和捕獲異常 142
第7章 多執行緒 145
7.1 執行緒的概念 145
7.2 創建多執行緒 146
7.2.1 通過threading.Thread()創建執行緒 146
7.2.2 通過繼承threading.Thread類創建執行緒 147
7.3 主 線 程 148
7.4 阻塞執行緒 149
7.5 判斷執行緒是否是活動的 150
7.6 執行緒同步 152
7.6.1 同步的概念 152
7.6.2 Python中的鎖 153
7.6.3 Python中的條件鎖 153
第8章 模組和包 157
8.1 模組 157
8.1.1 標準庫中的模組 157
8.1.2 查看模組的代碼 158
8.2 導入模組 160
8.2.1 最簡單的導入 160
8.2.2 from…import語句 161
8.2.3 from…import *語句 162
8.2.4 導入自定義的模組 162
8.3 包 163
8.3.1 包和模組的區別 163
8.3.2 包的結構 164
8.3.3 導入自定義的包 164
8.4 命名空間 165
8.4.1 命名空間 166
8.4.2 全局命名空間 167
8.4.3 局部命名空間 168
8.4.4 命名空間和類 169
8.4.5 命名空間和類的實例化 170
8.4.6 命名空間和類的繼承 172
第9章 Tkinter模組——圖形界面編程 174
9.1 Tkinter模組 174
9.1.1 Tkinter模組的Hello World 程式 175
9.1.2 tkinter包介紹 177
9.1.3 主視窗 178
9.2 Tkinter控制項 179
9.2.1 控制項的介紹 179
9.2.2 控制項的特性 181
9.2.3 Tkinter幾何管理器 182
9.2.4 Tkinter 事件及回調 185
9.3 Tkinter實戰 186
9.3.1 創建主視窗 186
9.3.2 添加選單欄及選單選項 186
9.3.3 添加下拉選單 188
9.3.4 實現簡單記事本 190
第10章 re模組——正則表達式 193
10.1 正則表達式簡介 193
10.1.1 正則表達式概念 193
10.1.2 正則表達式構成 194
10.2 re模組的簡單套用 196
10.3 常用正則表達式 199
10.3.1 常用數字表達式的校驗 200
10.3.2 常用字元表達式的校驗 202
10.3.3 特殊需求表達式的校驗 203
第11章 os模組與shutil模組——檔案處理 206
11.1 os模組 206
11.1.1 獲取系統類型 206
11.1.2 獲取系統環境 207
11.1.3 執行系統命令 208
11.1.4 操作及檔案 209
11.2 shutil模組 214
11.2.1 複製檔案 214
11.2.2 移動檔案 216
11.2.3 讀取壓縮及歸檔壓縮檔案 216
11.2.4 解壓檔案 217
11.3 檔案處理實戰 217
第12章 PIL(Pillow)模組——圖像實戰 220
12.1 Pillow庫簡介與安裝 220
12.1.1 Pillow庫的介紹 221
12.1.2 Pillow庫的安裝 221
12.2 Image類的使用 222
12.2.1 Image類的屬性 222
12.2.2 Image類的函式 223
12.3 圖像的基本合成 231
12.3.1 調用Image.composite接口 231
12.3.2 調用Image.blend接口 232
12.3.3 調用Image.paste接口 232
12.4 圖像的變換 233
12.4.1 圖像格式及尺寸變換 233
12.4.2 圖像通道變換 234
12.4.3 圖像幾何變換 235
12.4.4 圖像變換成OpenCV格式 235
12.5 圖像處理實戰 236
第13章 socket模組——網路編程 237
13.1 網路編程基礎 237
13.1.1 網路協定 237
13.1.2 IP位址與連線埠 239
13.1.3 socket 240
13.2 使用TCP的伺服器與客戶端 246
13.2.1 TCP工作原理 246
13.2.2 TCP伺服器的實現 247
13.2.3 TCP客戶端的實現 248
13.3 使用UDP的伺服器與客戶端 250
13.3.1 UDP工作原理 251
13.3.2 UDP伺服器的實現 251
13.3.3 UDP客戶端的實現 252
13.4 網路編程實戰 253
第14章 urllib工具包——網路爬蟲編程 257
14.1 urllib、urllib2與urllib3的異同 257
14.2 request模組 259
14.2.1 urlopen()、build_opener()和build_opener()方法 260
14.2.2 Request類 263
14.2.3 其他類 266
14.3 error模組 267
14.4 parse模組 268
14.4.1 URL解析 268
14.4.2 URL轉義 271
14.5 robotparser模組 274
14.6 urllib網路爬蟲實戰 275
第15章 Python資料庫編程實戰 278
15.1 操作SQLite 278
15.1.1 創建SQLite資料庫 278
15.1.2 創建SQLite數據表 279
15.1.3 為數據表添加數據 280
15.1.4 查詢數據 280
15.1.5 更新數據 281
15.1.6 刪除數據 281
15.1.7 connect和cursor的各種函式 281
15.2 操作MySQL 282
15.2.1 安裝PyMySQL庫 282
15.2.2 連線MySQL資料庫 283
15.2.3 增、刪、查、改數據 284
15.3 使用ORM框架SQLAlchemy操作MySQL 284
15.3.1 ORM的意義 285
15.3.2 安裝SQLAlchemy 285
15.3.3 導入SQLAlchemy 286
15.3.4 使用SQLAlchemy運算元據庫 286
第16章 Scrapy爬蟲實戰 288
16.1 安裝Scrapy 288
16.1.1 Windows下安裝Scrapy環境 288
16.1.2 Linux下安裝Scrapy 289
16.1.3 vim編輯器 290
16.2 Scrapy選擇器XPath和CSS 291
16.2.1 XPath選擇器 291
16.2.2 CSS選擇器 294
16.2.3 其他選擇器 295
16.3 天氣預報項目 296
16.3.1 項目準備 296
16.3.2 創建編輯Scrapy爬蟲 297
16.3.3 數據存儲到json 303
16.3.4 數據存儲到MySQL 305

相關詞條

熱門詞條

聯絡我們