Python第三方庫開發(fā)應(yīng)用實(shí)戰(zhàn)
定 價:99 元
- 作者:張有菊
- 出版時間:2020/5/1
- ISBN:9787115514950
- 出 版 社:人民郵電出版社
- 中圖法分類:TP311.561
- 頁碼:480
- 紙張:
- 版次:01
- 開本:16K
《Python第三方庫開發(fā)應(yīng)用實(shí)戰(zhàn)》循序漸進(jìn)地講解了Python中常用第三方庫的核心知識,并通過具體實(shí)例的實(shí)現(xiàn)過程演練了各個庫的使用流程。全書共12章,分別講解了Tornado框架、Django框架、Flask框架、數(shù)據(jù)庫存儲框架、數(shù)據(jù)庫驅(qū)動框架、使用ORM操作數(shù)據(jù)庫、特殊文本格式處理、圖像處理、圖形用戶界面、數(shù)據(jù)可視化、第三方多媒體庫、第三方網(wǎng)絡(luò)開發(fā)庫。
本書適用于已經(jīng)了解了Python基礎(chǔ)語法的讀者,也適用于希望進(jìn)一步提高自己Python開發(fā)水平的讀者,還可以作為大專院校相關(guān)專業(yè)的師生用書和培訓(xùn)學(xué)校的教材。
分別講解了Tornado框架、Django框架、Flask框架、數(shù)據(jù)庫存儲框架、數(shù)據(jù)庫驅(qū)動框架、使用ORM操作數(shù)據(jù)庫、特殊文本格式處理、圖像處理、圖形用戶界面、數(shù)據(jù)可視化、第三方多媒體庫、第三方網(wǎng)絡(luò)開發(fā)庫。
1.內(nèi)容全面。
本書內(nèi)容涵蓋了12類常用的Python第三方庫,通過案例,循序漸進(jìn)地講解了這些庫中函數(shù)的使用方法,幫助讀者快速掌握和應(yīng)用這些庫。
2.通過實(shí)例驅(qū)動教學(xué)。
本書采用理論加實(shí)例的講解方式,通過實(shí)例展示知識點(diǎn)的應(yīng)用,達(dá)到了學(xué)以致用的目的。
3.提供更為廣泛的解決方案。
通過本書的學(xué)習(xí),讀者可以構(gòu)建自己的Python工具箱。借助該工具箱,讀者能夠使用Python 開發(fā)各種類型的應(yīng)用程序。
4.提供示例源代碼下載服務(wù),可在異步社區(qū)輕松下載。
張有菊,計(jì)算機(jī)碩士,精通UNIX平臺開發(fā),12年C++開發(fā)經(jīng)驗(yàn),4年P(guān)ython開發(fā)經(jīng)驗(yàn),參與研發(fā)了浪潮云海OS系統(tǒng),這是中國首款自主研發(fā)的云數(shù)據(jù)中心操作系統(tǒng),深度融合OpenStack,是開放、融合、安全的云數(shù)據(jù)中心操作系統(tǒng),支持最廣泛的異構(gòu)資源管理和跨云整合。
目 錄
第 1章 Tornado框架 1
1.1 Tornado框架簡介 2
1.2 Tornado開發(fā)基礎(chǔ) 2
1.2.1 編寫第 一個Tornado程序 2
1.2.2 獲取請求參數(shù) 3
1.2.3 使用cookie 5
1.2.4 URL轉(zhuǎn)向 6
1.2.5 使用靜態(tài)資源文件 7
1.3 表單和模板操作 7
1.3.1 一個基本的注冊表單 7
1.3.2 在模板中使用函數(shù) 9
1.4 數(shù)據(jù)庫操作 12
1.4.1 實(shí)現(xiàn)持久化Web服務(wù) 12
1.4.2 圖書管理系統(tǒng) 15
第 2章 使用Django 20
2.1 Django簡介 21
2.2 Django開發(fā)基礎(chǔ) 21
2.2.1 搭建Django環(huán)境 21
2.2.2 常用的Django命令 22
2.2.3 第 一個Django項(xiàng)目 23
2.2.4 在URL中傳遞參數(shù) 25
2.2.5 使用模板 27
2.2.6 使用表單 31
2.2.7 實(shí)現(xiàn)基本的數(shù)據(jù)庫操作 32
2.3 使用Django后臺系統(tǒng)開發(fā)一個
博客系統(tǒng) 33
2.4 開發(fā)一個新聞聚合系統(tǒng) 36
2.4.1 基本設(shè)置 36
2.4.2 獲取聚合信息 37
2.4.3 視圖處理 40
2.4.4 模板文件 42
2.5 開發(fā)一個在線商城系統(tǒng) 45
2.5.1 系統(tǒng)設(shè)置 45
2.5.2 前臺商城展示模塊 46
2.5.3 購物車模塊 49
2.5.4 訂單模塊 53
2.6 使用Mezzanine庫 56
2.7 使用Cartridge庫 58
2.8 使用django-oscar庫 61
第3章 Flask框架 62
3.1 Flask開發(fā)基礎(chǔ) 63
3.1.1 Flask框架簡介 63
3.1.2 Django和Flask的對比 65
3.1.3 安裝Flask 65
3.1.4 第 一個Flask Web程序 66
3.2 基于Flask開發(fā)Web程序 68
3.2.1 傳遞URL參數(shù) 68
3.2.2 使用會話和cookie 70
3.2.3 使用Flask-Script擴(kuò)展 71
3.2.4 使用模板 72
3.2.5 使用Flask-Bootstrap
擴(kuò)展 74
3.2.6 使用Flask-Moment擴(kuò)展
本地化日期和時間 76
3.3 表單操作 78
3.3.1 使用Flask-WTF擴(kuò)展 78
3.3.2 文件上傳 81
3.4 使用數(shù)據(jù)庫 82
3.4.1 Python數(shù)據(jù)庫框架 82
3.4.2 會員注冊和登錄 82
3.4.3 使用Flask-SQLAlchemy
管理數(shù)據(jù)庫 84
3.5 收發(fā)電子郵件 87
3.5.1 使用Flask-Mail擴(kuò)展 87
3.5.2 使用SendGrid發(fā)送
郵件 90
3.6 Flask+MySQL+ SqlAlchemy
信息發(fā)布系統(tǒng) 92
3.6.1 使用Virtualenv創(chuàng)建
虛擬環(huán)境 92
3.6.2 使用Flask實(shí)現(xiàn)數(shù)據(jù)庫
遷移 92
3.6.3 具體實(shí)現(xiàn) 93
3.7 圖書借閱管理系統(tǒng) 100
3.7.1 數(shù)據(jù)庫設(shè)置 100
3.7.2 登錄驗(yàn)證與管理 101
3.7.3 安全檢查與頁面跳轉(zhuǎn)
管理 102
3.7.4 后臺用戶管理 102
3.7.5 圖書管理 103
3.7.6 前臺用戶管理 104
第4章 數(shù)據(jù)庫存儲框架 107
4.1 安裝與使用pickleDB 108
4.1.1 安裝pickleDB 108
4.1.2 使用pickleDB 108
4.2 安裝與使用TinyDB 108
4.2.1 安裝TinyDB 109
4.2.2 使用TinyDB 109
4.3 如何使用ZODB 110
4.3.1 安裝并使用ZODB 110
4.3.2 模擬銀行存取款系統(tǒng) 112
4.4 個人日志系統(tǒng)(使用Flask與
TinyDB實(shí)現(xiàn)) 114
4.4.1 系統(tǒng)設(shè)置 114
4.4.2 后臺管理 117
4.4.3 登錄認(rèn)證管理 118
4.4.4 前臺日志展示 121
4.4.5 系統(tǒng)模板 124
第5章 數(shù)據(jù)庫驅(qū)動框架 131
5.1 連接MySQL數(shù)據(jù)庫 132
5.1.1 使用mysqlclient 132
5.1.2 使用PyMySQL 134
5.2 連接PostgreSQL數(shù)據(jù)庫 146
5.2.1 下載并安裝
PostgreSQL 146
5.2.2 使用psycopg2模塊 148
5.2.3 使用queries模塊 155
5.3 連接SQLite3數(shù)據(jù)庫 156
5.4 連接SQL Server數(shù)據(jù)庫 158
5.5 連接NoSQL數(shù)據(jù)庫 161
5.5.1 使用cassandra-driver連接
Cassandra數(shù)據(jù)庫 161
5.5.2 使用PyMongo驅(qū)動連接
MongoDB數(shù)據(jù)庫 162
5.5.3 使用redis-py連接
Redis 165
第6章 使用ORM操作數(shù)據(jù)庫 169
6.1 ORM的背景 170
6.2 使用mysqlclient連接
數(shù)據(jù)庫 170
6.3 使用Peewee連接數(shù)據(jù)庫 174
6.3.1 Peewee的基本用法 174
6.3.2 使用Peewee、Flask與
MySQL開發(fā)一個在線
留言系統(tǒng) 178
6.4 使用Pony連接數(shù)據(jù)庫 181
6.4.1 Pony的基礎(chǔ)知識 181
6.4.2 操作SQLite數(shù)據(jù)庫 181
6.4.3 操作MySQL數(shù)據(jù)庫 186
6.5 使用mongoengine連接
MongoDB數(shù)據(jù)庫 188
第7章 特殊文本格式處理 191
7.1 使用Tablib模塊 192
7.1.1 基本用法 192
7.1.2 操作數(shù)據(jù)集中指定的
行和列 193
7.1.3 刪除并導(dǎo)出不同格式的
數(shù)據(jù) 193
7.1.4 生成一個Excel文件 194
7.1.5 處理多個數(shù)據(jù)集 195
7.1.6 使用標(biāo)簽過濾數(shù)據(jù) 197
7.1.7 分離表格中的數(shù)據(jù) 197
7.2 使用Office模塊/庫 198
7.2.1 使用openpyxl模塊 198
7.2.2 使用pyexcel模塊 202
7.2.3 使用python-docx模塊 208
7.2.4 使用xlrd和xlwt
庫讀寫Excel 219
7.2.5 使用xlsxwriter庫 221
7.3 使用PDF模塊/庫 229
7.3.1 使用PDFMiner模塊 229
7.3.2 使用PyPDF2 233
7.3.3 使用Reportlab庫 237
第8章 圖像處理 242
8.1 使用Pillow庫 243
8.1.1 安裝Pillow庫 243
8.1.2 使用Image模塊 243
8.1.3 繪制隨機(jī)漫步圖 249
8.1.4 使用ImageChops模塊
合成圖片 251
8.1.5 使用ImageEnhance模塊
增強(qiáng)圖像 253
8.1.6 使用ImageFilter模塊
實(shí)現(xiàn)濾鏡功能 255
8.1.7 使用ImageDraw模塊
繪制圖像 256
8.1.8 使用ImageFont模塊設(shè)置
字體 258
8.1.9 繪制指定年份的日歷 259
8.2 使用hmap庫 263
8.3 使用pyBarcode庫創(chuàng)建
條形碼 264
8.4 使用qrcode庫創(chuàng)建二維碼 266
8.5 使用scikit-image庫 269
8.5.1 讀取和顯示 270
8.5.2 像素操作 272
8.5.3 轉(zhuǎn)換操作 274
8.5.4 繪制圖像 276
8.5.5 圖像批處理 280
8.5.6 縮放和旋轉(zhuǎn) 281
8.6 使用face_recognition庫實(shí)現(xiàn)
人臉識別 283
8.6.1 搭建開發(fā)環(huán)境 283
8.6.2 面部特征 284
8.6.3 識別人臉 286
8.6.4 攝像頭實(shí)時識別 289
第9章 圖形用戶界面 290
9.1 使用PyQt庫 291
9.1.1 第 一個GUI程序 291
9.1.2 菜單和工具欄 293
9.1.3 界面布局 295
9.1.4 事件處理 299
9.1.5 對話框 303
9.1.6 組件 307
9.1.7 使用Eric6提高開發(fā)
效率 316
9.2 使用pyglet庫 317
9.2.1 安裝并嘗試使用
pyglet 317
9.2.2 實(shí)現(xiàn)OpenGL操作 319
9.2.3 開發(fā)一個pyglet游戲 320
9.3 使用toga庫 330
9.3.1 安裝toga庫并創(chuàng)建第 一個
toga示例 330
9.3.2 使用基本組件 331
9.3.3 使用布局組件 332
9.3.4 使用繪圖組件 333
9.4 使用wxPython庫 334
9.4.1 安裝并使用
wxPython庫 334
9.4.2 基本組件 335
第 10章 數(shù)據(jù)可視化 340
10.1 使用Matplotlib庫 341
10.1.1 搭建Matplotlib庫的
使用環(huán)境 341
10.1.2 初級繪圖 342
10.1.3 自定義散點(diǎn)圖樣式 345
10.1.4 繪制柱狀圖 346
10.1.5 繪制多幅子圖 350
10.1.6 繪制曲線 352
10.1.7 繪制隨機(jī)漫步圖 357
10.1.8 大數(shù)據(jù)分析某年的最
高溫度和最低溫度 360
10.1.9 在Tkinter中使用
Matplotlib庫繪制
圖表 361
10.2 使用pygal庫 362
10.2.1 安裝pygal庫 362
10.2.2 使用pygal庫模擬
擲骰子 363
10.3 使用csvkit庫處理CSV
文件 365
10.4 使用Pandas庫 371
10.4.1 安裝Pandas庫 371
10.4.2 從CSV文件讀取
數(shù)據(jù) 371
10.4.3 選擇指定數(shù)據(jù) 376
10.4.4 日期相關(guān)操作 379
10.5 使用NumPy庫 383
10.5.1 安裝NumPy庫 383
10.5.2 數(shù)組對象 384
10.5.3 使用通用函數(shù) 388
10.5.4 使用Matplotlib庫 393
第 11章 第三方多媒體庫 395
11.1 使用audiolazy庫處理數(shù)字
信號 396
11.1.1 安裝并嘗試使用
audiolazy庫 396
11.1.2 實(shí)現(xiàn)巴特沃斯濾波器 396
11.2 使用audioread庫實(shí)現(xiàn)音頻
解碼 397
11.3 使用eyeD3庫處理音頻 398
11.3.1 安裝并嘗試使用
eyeD3庫 398
11.3.2 使用eyeD3庫編程 398
11.3.3 MP3文件編輯器 399
11.4 使用m3u8庫 405
11.4.1 m3u8庫的介紹和
安裝 406
11.4.2 下載m3u8視頻并轉(zhuǎn)換為
MP4文件 406
11.5 使用mutagen庫 407
11.5.1 安裝并嘗試使用
mutagen庫 407
11.5.2 獲取指定音頻文件的
標(biāo)簽信息 408
11.5.3 批量設(shè)置視頻文件的
封面圖片 409
11.6 使用pydub庫 414
11.6.1 安裝并嘗試使用
pydub庫 415
11.6.2 使用AudioSegment 415
11.6.3 截取指定的MP3
文件 419
11.7 使用tinytag庫 420
11.7.1 安裝并嘗試使用
tinytag庫 420
11.7.2 開發(fā)一個MP3
播放器 421
11.8 使用moviepy庫 429
11.8.1 安裝moviepy庫 429
11.8.2 剪切一段視頻 429
11.8.3 視頻合成 430
11.8.4 多屏顯示 430
11.8.5 設(shè)置視頻屬性 432
11.8.6 使用moviepy庫和
Matplotlib庫實(shí)現(xiàn)
數(shù)據(jù)的動態(tài)可視化 433
11.8.7 動畫合成 434
11.8.8 使用moviepy庫和
numpy庫實(shí)現(xiàn)文本
動態(tài)化 435
11.9 使用scikit-video庫 436
11.9.1 安裝并嘗試使用
scikit-video庫 436
11.9.2 寫入視頻 437
11.9.3 視頻基準(zhǔn)測試 438
11.9.4 圖像的讀取和寫入 439
11.9.5 視頻的讀取和寫入 440
第 12章 第三方網(wǎng)絡(luò)開發(fā)庫 442
12.1 處理HTML和XML 443
12.1.1 使用Beautiful Soup庫 443
12.1.2 使用bleach庫 449
12.1.3 使用cssutils庫 454
12.1.4 使用html5lib庫 455
12.1.5 使用MarkupSafe庫 456
12.1.6 使用PyQuery庫 457
12.2 處理HTTP 461
12.2.1 使用aiohttp庫 461
12.2.2 使用requests庫 463
12.2.3 使用httplib2庫 466
12.2.4 使用urllib3庫 469
12.3 電子郵件 472
12.3.1 使用envelopes庫 472
12.3.2 使用Inbox庫 473
12.4 處理URL 476
12.4.1 使用furl庫 476
12.4.2 使用purl庫 477
12.4.3 使用webargs庫 479