關(guān)于我們
書單推薦
新書推薦
|
瘋狂Python講義 讀者對(duì)象:Python入門讀者
本書全面而深入介紹了Python編程的相關(guān)內(nèi)容, 全書內(nèi)容大致可分為四個(gè)部分, *部分系統(tǒng)講解了Python的基本語法結(jié)構(gòu)、函數(shù)編程、類和對(duì)象、模塊和包、異常處理等; 第二部分主要介紹Python常用的內(nèi)置模塊和包, 這部分包括正則表達(dá)式支持IO編程、數(shù)據(jù)庫編程、并發(fā)編程、網(wǎng)絡(luò)通信編程等內(nèi)容; 第三部分主要介紹Python開發(fā)工程化方面的內(nèi)容; 第四部分則屬于”Python項(xiàng)目實(shí)戰(zhàn)”, 這部分通過項(xiàng)目介紹了Python游戲開發(fā)、大數(shù)據(jù)展示、網(wǎng)絡(luò)爬蟲等熱門技能, 進(jìn)一步貼近就業(yè)崗位需求。
李剛,十余年軟件開發(fā)從業(yè)經(jīng)驗(yàn),瘋狂軟件教育中心教學(xué)總監(jiān)。瘋狂Java實(shí)訓(xùn)營創(chuàng)始人,瘋狂體系原創(chuàng)圖書作者。CSDN特邀講師。培訓(xùn)的學(xué)生已在騰訊、阿里、華為、IBM、網(wǎng)易、電信盈科等名企就職。國內(nèi)知名高端IT技術(shù)圖書作家,已出版《瘋狂Java講義》《瘋狂Spring Boot講義》《瘋狂Android講義》《輕量級(jí)Java Web企業(yè)應(yīng)用實(shí)戰(zhàn)》《瘋狂前端開發(fā)講義》《瘋狂HTML5/CSS3/講義》等著作。其中瘋狂Java體系圖書均已沉淀多年,贏得極高的市場(chǎng)認(rèn)同,多次重印,多部著作印刷數(shù)量超過10萬冊(cè),并被多所“985”“211”院校選作教材或參考書,部分圖書已被翻譯成繁體中文版,授權(quán)到寶島臺(tái)灣。
第1章 Python語言概述和開發(fā)環(huán)境 1
1.1 Python簡(jiǎn)介 2 1.1.1 Python簡(jiǎn)史 2 1.1.2 Python的特點(diǎn) 3 1.2 Python程序運(yùn)行機(jī)制 3 1.3 開發(fā)Python的準(zhǔn)備 4 1.3.1 在Windows上安裝Python 4 1.3.2 在Linux上安裝Python 6 1.3.3 在Mac OS X上安裝Python 7 1.4 第一個(gè)Python程序 7 1.4.1 編輯Python源程序 7 1.4.2 使用IDLE運(yùn)行Python程序 8 1.4.3 使用命令行工具運(yùn)行Python程序 8 1.5 交互式解釋器 10 1.6 本章小結(jié) 11 本章練習(xí) 11 第2章 變量和簡(jiǎn)單類型 12 2.1 單行注釋和多行注釋 13 2.2 變量 14 2.2.1 Python是弱類型語言 14 2.2.2 使用print函數(shù)輸出變量 15 2.2.3 變量的命名規(guī)則 16 2.2.4 Python的關(guān)鍵字和內(nèi)置函數(shù) 17 2.3 數(shù)值類型 18 2.3.1 整型 18 2.3.2 浮點(diǎn)型 20 2.3.3 復(fù)數(shù) 20 2.4 字符串入門 21 2.4.1 字符串和轉(zhuǎn)義字符 21 2.4.2 拼接字符串 22 2.4.3 repr和字符串 22 2.4.4 使用input和raw_input獲取用戶 輸入 23 2.4.5 長字符串 24 2.4.6 原始字符串 24 2.4.7 字節(jié)串(bytes) 25 2.5 深入使用字符串 27 2.5.1 轉(zhuǎn)義字符 27 2.5.2 字符串格式化 27 2.5.3 序列相關(guān)方法 29 2.5.4 大小寫相關(guān)方法 30 2.5.5 刪除空白 32 2.5.6 查找、替換相關(guān)方法 32 2.5.7 分割、連接方法 34 2.6 運(yùn)算符 34 2.6.1 賦值運(yùn)算符 34 2.6.2 算術(shù)運(yùn)算符 35 2.6.3 位運(yùn)算符 37 2.6.4 擴(kuò)展后的賦值運(yùn)算符 40 2.6.5 索引運(yùn)算符 40 2.6.6 比較運(yùn)算符與bool類型 40 2.6.7 邏輯運(yùn)算符 41 2.6.8 三目運(yùn)算符 42 2.6.9 in運(yùn)算符 43 2.6.10 運(yùn)算符的結(jié)合性和優(yōu)先級(jí) 43 2.7 本章小結(jié) 44 本章練習(xí) 44 第3章 列表、元組和字典 46 3.1 序列簡(jiǎn)介 47 3.1.1 Python的序列 47 3.1.2 創(chuàng)建列表和元組 47 3.2 列表和元組的通用用法 48 3.2.1 通過索引使用元素 48 3.2.2 子序列 48 3.2.3 加法 49 3.2.4 乘法 49 3.2.5 in運(yùn)算符 50 3.2.6 長度、最大值和最小值 50 3.2.7 序列封包和序列解包 51 3.3 使用列表 52 3.3.1 創(chuàng)建列表 52 3.3.2 增加列表元素 53 3.3.3 刪除列表元素 54 3.3.4 修改列表元素 55 3.3.5 列表的其他常用方法 56 3.4 使用字典 58 3.4.1 字典入門 58 3.4.2 創(chuàng)建字典 58 3.4.3 字典的基本用法 59 3.4.4 字典的常用方法 60 3.4.5 使用字典格式化字符串 63 3.5 本章小結(jié) 63 本章練習(xí) 64 第4章 流程控制 65 4.1 順序結(jié)構(gòu) 66 4.2 if分支結(jié)構(gòu) 66 4.2.1 不要忘記縮進(jìn) 67 4.2.2 不要隨意縮進(jìn) 69 4.2.3 不要遺忘冒號(hào) 70 4.2.4 if條件的類型 70 4.2.5 if分支的邏輯錯(cuò)誤 71 4.2.6 if表達(dá)式 72 4.2.7 pass語句 72 4.3 斷言 73 4.4 循環(huán)結(jié)構(gòu) 73 4.4.1 while循環(huán) 73 4.4.2 使用while循環(huán)遍歷列表和元組 74 4.4.3 for-in循環(huán) 75 4.4.4 使用for-in循環(huán)遍歷列表和元組 76 4.4.5 使用for-in循環(huán)遍歷字典 77 4.4.6 循環(huán)使用else 78 4.4.7 嵌套循環(huán) 79 4.4.8 for表達(dá)式 80 4.4.9 常用工具函數(shù) 82 4.5 控制循環(huán)結(jié)構(gòu) 83 4.5.1 使用break結(jié)束循環(huán) 83 4.5.2 使用continue忽略本次循環(huán)的剩 下語句 85 4.5.3 使用return結(jié)束方法 85 4.6 牛刀小試 86 4.6.1 數(shù)字轉(zhuǎn)人民幣讀法 86 4.6.2 繞圈圈 87 4.6.3 控制臺(tái)五子棋 89 4.6.4 控制臺(tái)超市系統(tǒng) 90 4.7 本章小結(jié) 94 本章練習(xí) 94 第5章 函數(shù)和lambda表達(dá)式 97 5.1 函數(shù)入門 98 5.1.1 理解函數(shù) 98 5.1.2 定義函數(shù)和調(diào)用函數(shù) 99 5.1.3 為函數(shù)提供文檔 100 5.1.4 多個(gè)返回值 100 5.1.5 遞歸函數(shù) 101 5.2 函數(shù)的參數(shù) 102 5.2.1 關(guān)鍵字(keyword)參數(shù) 102 5.2.2 參數(shù)默認(rèn)值 103 5.2.3 參數(shù)收集(個(gè)數(shù)可變的參數(shù)) 105 5.2.4 逆向參數(shù)收集 106 5.2.5 函數(shù)的參數(shù)傳遞機(jī)制 107 5.2.6 變量作用域 111 5.3 局部函數(shù) 113 5.4 函數(shù)的高級(jí)內(nèi)容 114 5.4.1 使用函數(shù)變量 115 5.4.2 使用函數(shù)作為函數(shù)形參 115 5.4.3 使用函數(shù)作為返回值 116 5.5 局部函數(shù)與lambda表達(dá)式 117 5.5.1 回顧局部函數(shù) 117 5.5.2 使用lambda表達(dá)式代替局部函數(shù) 118 5.6 本章小結(jié) 119 本章練習(xí) 119 第6章 類和對(duì)象 120 6.1 類和對(duì)象 121 6.1.1 定義類 121 6.1.2 對(duì)象的產(chǎn)生和使用 122 6.1.3 對(duì)象的動(dòng)態(tài)性 123 6.1.4 實(shí)例方法和自動(dòng)綁定self 124 6.2 方法 126 6.2.1 類也能調(diào)用實(shí)例方法 126 6.2.2 類方法與靜態(tài)方法 128 6.2.3 @函數(shù)裝飾器 128 6.2.4 再論類命名空間 131 6.3 成員變量 131 6.3.1 類變量和實(shí)例變量 131 6.3.2 使用property函數(shù)定義屬性 134 6.4 隱藏和封裝 137 6.5 類的繼承 139 6.5.1 繼承的語法 139 6.5.2 關(guān)于多繼承 140 6.5.3 重寫父類的方法 140 6.5.4 使用未綁定方法調(diào)用被重寫的 方法 141 6.5.5 使用super函數(shù)調(diào)用父類的構(gòu)造 方法 142 6.6 Python的動(dòng)態(tài)性 143 6.6.1 動(dòng)態(tài)屬性與__slots__ 144 6.6.2 使用type()函數(shù)定義類 145 6.6.3 使用metaclass 146 6.7 多態(tài) 147 6.7.1 多態(tài)性 147 6.7.2 檢查類型 149 6.8 枚舉類 150 6.8.1 枚舉入門 150 6.8.2 枚舉的構(gòu)造器 152 6.9 本章小結(jié) 153 本章練習(xí) 153 第7章 異常處理 154 7.1 異常概述 155 7.2 異常處理機(jī)制 156 7.2.1 使用try...except捕獲異常 156 7.2.2 異常類的繼承體系 157 7.2.3 多異常捕獲 159 7.2.4 訪問異常信息 160 7.2.5 else塊 161 7.2.6 使用finally回收資源 163 7.2.7 異常處理嵌套 165 7.3 使用raise引發(fā)異常 165 7.3.1 引發(fā)異常 165 7.3.2 自定義異常類 166 7.3.3 except和raise同時(shí)使用 167 7.3.4 raise不需要參數(shù) 168 7.4 Python的異常傳播軌跡 168 7.5 異常處理規(guī)則 170 7.5.1 不要過度使用異常 171 7.5.2 不要使用過于龐大的try塊 172 7.5.3 不要忽略捕獲到的異常 172 7.6 本章小結(jié) 172 本章練習(xí) 173 第8章 Python類的特殊方法 174 8.1 常見的特殊方法 175 8.1.1 重寫__repr__方法 175 8.1.2 析構(gòu)方法:__del__ 176 8.1.3 __dir__方法 177 8.1.4 __dict__屬性 178 8.1.5 __getattr__、__setattr__等 178 8.2 與反射相關(guān)的屬性和方法 180 8.2.1 動(dòng)態(tài)操作屬性 180 8.2.2 __call__屬性 182 8.3 與序列相關(guān)的特殊方法 183 8.3.1 序列相關(guān)方法 183 8.3.2 實(shí)現(xiàn)迭代器 185 8.3.3 擴(kuò)展列表、元組和字典 186 8.4 生成器 186 8.4.1 創(chuàng)建生成器 187 8.4.2 生成器的方法 189 8.5 運(yùn)算符重載的特殊方法 191 8.5.1 與數(shù)值運(yùn)算符相關(guān)的特殊方法 191 8.5.2 與比較運(yùn)算符相關(guān)的特殊方法 194 8.5.3 與單目運(yùn)算符相關(guān)的特殊方法 195 8.5.4 與類型轉(zhuǎn)換相關(guān)的特殊方法 196 8.5.5 與常見的內(nèi)建函數(shù)相關(guān)的特殊 方法 197 8.6 本章小結(jié) 198 本章練習(xí) 198 第9章 模塊和包 199 9.1 模塊化編程 200 9.1.1 導(dǎo)入模塊的語法 200 9.1.2 定義模塊 203 9.1.3 為模塊編寫說明文檔 203 9.1.4 為模塊編寫測(cè)試代碼 204 9.2 加載模塊 205 9.2.1 使用環(huán)境變量 205 9.2.2 默認(rèn)的模塊加載路徑 208 9.2.3 導(dǎo)入模塊的本質(zhì) 209 9.2.4 模塊的__all__變量 211 9.3 使用包 212 9.3.1 什么是包 212 9.3.2 定義包 212 9.3.3 導(dǎo)入包內(nèi)成員 214 9.4 查看模塊內(nèi)容 216 9.4.1 模塊包含什么 216 9.4.2 使用__doc__屬性查看文檔 217 9.4.3 使用__file__屬性查看模塊的源 文件路徑 218 9.5 本章小結(jié) 218 本章練習(xí) 218 第10章 常見模塊 219 10.1 sys 220 10.1.1 獲取運(yùn)行參數(shù) 222 10.1.2 動(dòng)態(tài)修改模塊加載路徑 223 10.2 os模塊 223 10.3 random 225 10.4 time 227 10.5 JSON支持 230 10.5.1 JSON的基本知識(shí) 230 10.5.2 Python的JSON支持 232 10.6 正則表達(dá)式 236 10.6.1 Python的正則表達(dá)式支持 236 10.6.2 正則表達(dá)式旗標(biāo) 241 10.6.3 創(chuàng)建正則表達(dá)式 242 10.6.4 子表達(dá)式 244 10.6.5 貪婪模式與勉強(qiáng)模式 246 10.7 容器相關(guān)類 247 10.7.1 set和frozenset 248 10.7.2 雙端隊(duì)列(deque) 250 10.7.3 Python的堆操作 253 10.8 collections下的容器支持 255 10.8.1 ChainMap對(duì)象 255 10.8.2 Counter對(duì)象 257 10.8.3 defaultdict對(duì)象 260 10.8.4 namedtuple工廠函數(shù) 261 10.8.5 OrderedDict對(duì)象 262 10.9 函數(shù)相關(guān)模塊 264 10.9.1 itertools模塊的功能函數(shù) 264 10.9.2 functools模塊的功能函數(shù) 267 10.10 本章小結(jié) 273 本章練習(xí) 273 第11章 圖形界面編程 275 11.1 Python的GUI庫 276 11.2 Tkinter GUI編程的組件 277 11.3 布局管理器 283 11.3.1 Pack布局管理器 283 11.3.2 Grid布局管理器 285 11.3.3 Place布局管理器 287 11.4 事件處理 288 11.4.1 簡(jiǎn)單的事件處理 289 11.4.2 事件綁定 289 11.5 Tkinter常用組件 293 11.5.1 使用ttk組件 293 11.5.2 Variable類 294 11.5.3 使用compound選項(xiàng) 295 11.5.4 Entry和Text組件 297 11.5.5 Radiobutton和Checkbutton組件 300 11.5.6 Listbox和Combobox組件 303 11.5.7 Spinbox組件 308 11.5.8 Scale和LabeledScale組件 309 11.5.9 Labelframe組件 312 11.5.10 Panedwindow組件 314 11.5.11 OptionMenu組件 316 11.6 對(duì)話框(Dialog) 318 11.6.1 普通對(duì)話框 318 11.6.2 自定義模式、非模式對(duì)話框 320 11.6.3 輸入對(duì)話框 322 11.6.4 文件對(duì)話框 324 11.6.5 顏色選擇對(duì)話框 326 11.6.6 消息框 327 11.7 菜單 330 11.7.1 窗口菜單 330 11.7.2 右鍵菜單 334 11.8 在Canvas中繪圖 336 11.8.1 Tkinter Canvas的繪制功能 336 11.8.2 操作圖形項(xiàng)的標(biāo)簽 343 11.8.3 操作圖形項(xiàng) 345 11.8.4 為圖形項(xiàng)綁定事件 349 11.8.5 繪制動(dòng)畫 354 11.9 本章小結(jié) 357 本章練習(xí) 357 第12章 文件I/O 358 12.1 使用pathlib模塊操作目錄 359 12.1.1 PurePath的基本功能 360 12.1.2 PurePath的屬性和方法 362 12.1.3 Path的功能和用法 363 12.2 使用os.path操作目錄 365 12.3 使用fnmatch處理文件名匹配 366 12.4 打開文件 367 12.4.1 文件打開模式 367 12.4.2 緩沖 368 12.5 讀取文件 369 12.5.1 按字節(jié)或字符讀取 369 12.5.2 按行讀取 371 12.5.3 使用fileinput讀取多個(gè)輸入流 371 12.5.4 文件迭代器 372 12.5.5 管道輸入 373 12.5.6 使用with語句 374 12.5.7 使用linecache隨機(jī)讀取指定行 376 12.6 寫文件 376 12.6.1 文件指針的概念 376 12.6.2 輸出內(nèi)容 377 12.7 os模塊的文件和目錄函數(shù) 378 12.7.1 與目錄相關(guān)的函數(shù) 379 12.7.2 與權(quán)限相關(guān)的函數(shù) 380 12.7.3 與文件訪問相關(guān)的函數(shù) 381 12.8 使用tempfile模塊生成臨時(shí)文件和 臨時(shí)目錄 383 12.9 本章小結(jié) 385 本章練習(xí) 385 第13章 數(shù)據(jù)庫編程 386 13.1 Python數(shù)據(jù)庫API簡(jiǎn)介 387 13.1.1 全局變量 387 13.1.2 數(shù)據(jù)庫API的核心類 388 13.1.3 操作數(shù)據(jù)庫的基本流程 389 13.2 操作SQLite數(shù)據(jù)庫 389 13.2.1 創(chuàng)建數(shù)據(jù)表 390 13.2.2 使用SQLite Expert工具 391 13.2.3 使用序列重復(fù)執(zhí)行DML語句 393 13.2.4 執(zhí)行查詢 395 13.2.5 事務(wù)控制 396 13.2.6 執(zhí)行SQL腳本 397 13.2.7 創(chuàng)建自定義函數(shù) 398 13.2.8 創(chuàng)建聚集函數(shù) 399 13.2.9 創(chuàng)建比較函數(shù) 400 13.3 操作MySQL數(shù)據(jù)庫 401 13.3.1 下載和安裝MySQL數(shù)據(jù)庫 401 13.3.2 使用pip工具管理模塊 404 13.3.3 執(zhí)行DDL語句 405 13.3.4 執(zhí)行DML語句 407 13.3.5 執(zhí)行查詢語句 408 13.3.6 調(diào)用存儲(chǔ)過程 409 13.4 本章小結(jié) 410 本章練習(xí) 411 第14章 并發(fā)編程 412 14.1 線程概述 413 14.1.1 線程和進(jìn)程 413 14.1.2 多線程的優(yōu)勢(shì) 414 14.2 線程的創(chuàng)建和啟動(dòng) 415 14.2.1 調(diào)用Thread類的構(gòu)造器創(chuàng)建 線程 415 14.2.2 繼承Thread類創(chuàng)建線程類 417 14.3 線程的生命周期 418 14.3.1 新建和就緒狀態(tài) 418 14.3.2 運(yùn)行和阻塞狀態(tài) 419 14.3.3 線程死亡 420 14.4 控制線程 421 14.4.1 join線程 422 14.4.2 后臺(tái)線程 422 14.4.3 線程睡眠:sleep 423 14.5 線程同步 424 14.5.1 線程安全問題 424 14.5.2 同步鎖(Lock) 425 14.5.3 死鎖 428 14.6 線程通信 430 14.6.1 使用Condition實(shí)現(xiàn)線程通信 430 14.6.2 使用隊(duì)列(Queue)控制線程 通信 433 14.6.3 使用Event控制線程通信 434 14.7 線程池 436 14.7.1 使用線程池 437 14.7.2 獲取執(zhí)行結(jié)果 439 14.8 線程相關(guān)類 440 14.8.1 線程局部變量 440 14.8.2 定時(shí)器 441 14.8.3 任務(wù)調(diào)度 442 14.9 多進(jìn)程 443 14.9.1 使用fork創(chuàng)建新進(jìn)程 443 14.9.2 使用multiprocessing.Process創(chuàng)建 新進(jìn)程 444 14.9.3 Context和啟動(dòng)進(jìn)程的方式 446 14.9.4 使用進(jìn)程池管理進(jìn)程 448 14.9.5 進(jìn)程通信 449 14.10 本章小結(jié) 451 本章練習(xí) 451 第15章 網(wǎng)絡(luò)編程 452 15.1 網(wǎng)絡(luò)編程的基礎(chǔ)知識(shí) 453 15.1.1 網(wǎng)絡(luò)基礎(chǔ)知識(shí) 453 15.1.2 IP地址和端口號(hào) 454 15.2 Python的基本網(wǎng)絡(luò)支持 455 15.2.1 Python的網(wǎng)絡(luò)模塊概述 455 15.2.2 使用urllib.parse子模塊 456 15.2.3 使用urllib.request讀取資源 459 15.2.4 管理cookie 464 15.3 基于TCP協(xié)議的網(wǎng)絡(luò)編程 467 15.3.1 TCP協(xié)議基礎(chǔ) 467 15.3.2 使用socket創(chuàng)建TCP服務(wù)器端 468 15.3.3 使用socket通信 469 15.3.4 加入多線程 470 15.3.5 記錄用戶信息 472 15.3.6 半關(guān)閉的socket 477 15.3.7 selectors模塊 478 15.4 基于UDP協(xié)議的網(wǎng)絡(luò)編程 480 15.4.1 UDP協(xié)議基礎(chǔ) 480 15.4.2 使用socket發(fā)送和接收數(shù)據(jù) 481 15.4.3 使用UDP協(xié)議實(shí)現(xiàn)多點(diǎn)廣播 483 15.5 電子郵件支持 484 15.5.1 使用smtplib模塊發(fā)送郵件 484 15.5.2 使用poplib模塊收取郵件 488 15.6 本章小結(jié) 491 本章練習(xí) 491 第16章 文檔和測(cè)試 492 16.1 使用pydoc生成文檔 493 16.1.1 在控制臺(tái)中查看文檔 494 16.1.2 生成HTML文檔 495 16.1.3 啟動(dòng)本地服務(wù)器來查看文檔信息 495 16.1.4 查找模塊 496 16.2 軟件測(cè)試概述 497 16.2.1 軟件測(cè)試的概念和目的 497 16.2.2 軟件測(cè)試的分類 498 16.2.3 開發(fā)活動(dòng)和測(cè)試活動(dòng) 499 16.2.4 常見的Bug管理工具 499 16.3 文檔測(cè)試 500 16.4 單元測(cè)試 502 16.4.1 單元測(cè)試概述 502 16.4.2 單元測(cè)試的邏輯覆蓋 504 16.5 使用PyUnit(unittest) 506 16.5.1 PyUnit(unittest)的用法 507 16.5.2 運(yùn)行測(cè)試 510 16.5.3 使用測(cè)試包 511 16.5.4 測(cè)試固件之setUp和tearDown 513 16.5.5 跳過測(cè)試用例 515 16.6 本章小結(jié) 516 本章練習(xí) 516 第17章 打包和發(fā)布 517 17.1 使用zipapp模塊 518 17.1.1 生成可執(zhí)行的Python檔案包 518 17.1.2 創(chuàng)建獨(dú)立應(yīng)用 519 17.2 使用PyInstaller生成可執(zhí)行程序 520 17.2.1 安裝PyInstaller 520 17.2.2 生成可執(zhí)行程序 521 17.3 本章小結(jié) 523 本章練習(xí) 523 第18章 合金彈頭 524 18.1 合金彈頭游戲簡(jiǎn)介 525 18.2 pygame簡(jiǎn)介 525 18.2.1 安裝pygame 526 18.2.2 pygame常用的游戲API 527 18.3 開發(fā)游戲界面組件 529 18.3.1 游戲界面分析 529 18.3.2 實(shí)現(xiàn)“怪物”類 529 18.3.3 實(shí)現(xiàn)怪物管理 534 18.3.4 實(shí)現(xiàn)“子彈”類 536 18.3.5 加載、管理游戲圖片 538 18.3.6 讓游戲“運(yùn)行”起來 540 18.4 增加“角色” 541 18.4.1 開發(fā)“角色”類 541 18.4.2 添加角色 547 18.5 合理繪制地圖 550 18.6 增加音效 551 18.7 增加游戲場(chǎng)景 554 18.8 本章小結(jié) 558 本章練習(xí) 558 第19章 數(shù)據(jù)可視化 559 19.1 使用Matplotlib生成數(shù)據(jù)圖 560 19.1.1 安裝Matplotlib包 560 19.1.2 Matplotlib數(shù)據(jù)圖入門 561 19.1.3 管理圖例 562 19.1.4 管理坐標(biāo)軸 565 19.1.5 管理多個(gè)子圖 566 19.2 功能豐富的數(shù)據(jù)圖 570 19.2.1 餅圖 570 19.2.2 柱狀圖 571 19.2.3 水平柱狀圖 573 19.2.4 散點(diǎn)圖 574 19.2.5 等高線圖 576 19.2.6 3D圖形 577 19.3 使用Pygal生成數(shù)據(jù)圖 578 19.3.1 安裝Pygal包 578 19.3.2 Pygal數(shù)據(jù)圖入門 578 19.3.3 配置Pygal數(shù)據(jù)圖 580 19.4 Pygal支持的常見數(shù)據(jù)圖 581 19.4.1 折線圖 581 19.4.2 水平柱狀圖和水平折線圖 581 19.4.3 疊加柱狀圖和疊加折線圖 582 19.4.4 餅圖 583 19.4.5 點(diǎn)圖 584 19.4.6 儀表(Gauge)圖 585 19.4.7 雷達(dá)圖 586 19.5 處理數(shù)據(jù) 587 19.5.1 CSV文件格式 587 19.5.2 JSON數(shù)據(jù) 590 19.5.3 數(shù)據(jù)清洗 593 19.5.4 讀取網(wǎng)絡(luò)數(shù)據(jù) 595 19.6 本章小結(jié) 597 本章練習(xí) 597 第20章 網(wǎng)絡(luò)爬蟲 598 20.1 Scrapy簡(jiǎn)介 599 20.1.1 了解Scrapy 599 20.1.2 安裝Scrapy 600 20.2 使用爬蟲爬取、分析招聘信息 601 20.2.1 創(chuàng)建Scrapy項(xiàng)目 601 20.2.2 使用shell調(diào)試工具 603 20.2.3 Scrapy開發(fā)步驟 606 20.2.4 使用JSON導(dǎo)出信息 611 20.2.5 將數(shù)據(jù)寫入數(shù)據(jù)庫 611 20.2.6 使用Pygal展示招聘信息 612 20.3 處理反爬蟲 613 20.3.1 使用shell調(diào)試工具分析目標(biāo)站點(diǎn) 614 20.3.2 使用Scrapy爬取高清圖片 616 20.3.3 應(yīng)對(duì)反爬蟲的常見方法 618 20.3.4 整合Selenium模擬瀏覽器行為 620 20.4 本章小結(jié) 624 本章練習(xí) 624
你還可能感興趣
我要評(píng)論
|