Python 第三方庫開發應用實戰
張有菊
買這商品的人也買了...
-
$580$568 -
$301人工智能產品經理 — AI時代 PM修煉手冊
-
$301特徵工程入門與實踐 (Feature Engineering Made Easy)
-
$352物聯網 So Easy -- 基於 Blynk 平臺的 IOT 項目實踐
-
$580$458 -
$422$401 -
$505Python 計算與編程實踐 多媒體方法, 4/e (Introduction to Computing and Programming in Python, 4/e)
-
$890$703 -
$454Python 圖形編程:2D 和 3D 圖像的創建
-
$327$311 -
$419$398 -
$454用 Python 動手學機器學習
-
$213$203 -
$390$351 -
$449人工智能數學基礎
-
$599$473 -
$407圖解機器學習算法 (全彩印刷)
-
$534$507 -
$599$569 -
$352深度學習原理與 PyTorch 實戰
-
$1,000$790 -
$680$537 -
$556機器學習中的加速一階優化算法
-
$653Python 漫游數學王國 — 高等數學、線性代數、數理統計及運籌學
-
$980$774
相關主題
商品描述
內容提要本書循序漸進地講解了Python中常用第三方庫的核心知識,並通過具體實例的實現過程演練了各個庫的使用流程。
全書共12章,分別講解了Tornado框架、Django框架、Flask框架、數據庫存儲框架、
數據庫驅動框架、使用ORM操作數據庫、特殊文本格式處理、圖像處理、圖形用戶界面、
數據可視化、第三方多媒體庫、第三方網絡開發庫。
本書適用於已經瞭解了Python基礎語法的讀者,也適用於希望進一步提高自己Python開發水平的讀者,
還可以作為大專院校相關專業的師生用書和培訓學校的教材。
作者簡介
張有菊
計算機碩士,精通UNIX平台開發,12年C++開發經驗,4年Python開發經驗,參與研發了浪潮雲海OS系統,
這是中國首款自主研發的雲數據中心操作系統,深度融合OpenStack ,是開放、融合、
安全的雲數據中心操作系統,支持*廣泛的異構資源管理和跨雲整合。
目錄大綱
目錄
第1章Tornado框架1
1.1 Tornado框架簡介2
1.2 Tornado開發基礎2
1.2.1編寫第一個Tornado程序2
1.2.2獲取請求參數3
1.2.3使用cookie 5
1.2.4 URL轉向6
1.2.5使用靜態資源文件7
1.3表單和模板操作7
1.3.1一個基本的註冊表單7
1.3.2在模板中使用函數9
1.4數據庫操作12
1.4.1實現持久化Web服務12
1.4.2圖書管理系統15
第2章使用Django 20
2.1 Django簡介21
2.2 Django開發基礎21
2.2.1搭建Django環境21
2.2.2常用的Django命令22
2.2.3第一個Django項目23
2.2.4在URL中傳遞參數25
2.2.5使用模板27
2.2.6使用表單31
2.2.7實現基本的數據庫操作32
2.3使用Django後台系統開發一個博客系統33
2.4開發一個新聞聚合系統36
2.4.1基本設置36
2.4.2獲取聚合信息37
2.4.3視圖處理40
2.4.4模板文件42
2.5開發一個在線商城系統45
2.5.1系統設置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開發基礎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開發Web程序68
3.2.1傳遞URL參數68
3.2.2使用會話和cookie 70
3.2.3使用Flask-Script擴展71
3.2.4使用模板72
3.2.5使用Flask-Bootstrap 擴展74
3.2.6使用Flask-Moment擴展本地化日期和時間76
3.3表單操作78
3.3.1使用Flask -WTF擴展78
3.3.2文件上傳81
3.4使用數據庫82
3.4.1 Python數據庫框架82
3.4.2會員註冊和登錄82
3.4.3使用Flask-SQLAlchemy 管理數據庫84
3.5收發電子郵件87
3.5.1使用Flask-Mail擴展87
3.5.2使用SendGrid發送郵件90
3.6 Flask+ MySQL+ SqlAlchemy信息發布系統92
3.6.1使用Virtualenv創建虛擬環境92
3.6.2使用Flask實現數據庫遷移92
3.6.3具體實現93
3.7圖書借閱管理系統100
3.7.1數據庫設置100
3.7.2登錄驗證與管理101
3.7.3安全檢查與頁面跳轉管理102
3.7.4後台用戶管理102
3.7.5圖書管理103
3.7.6前台用戶管理104
第4章數據庫存儲框架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模擬銀行存取款系統112
4.4個人日誌系統(使用Flask與TinyDB實現) 114
4.4.1系統設置114
4.4.2後台管理117
4.4.3登錄認證管理118
4.4.4前台日誌展示121
4.4.5系統模板124
第5章數據庫驅動框架131
5.1連接MySQL數據庫132
5.1.1使用mysqlclient 132
5.1.2使用PyMySQL 134
5.2連接PostgreSQL數據庫146
5.2.1下載並安裝PostgreSQL 146
5.2.2使用psycopg2模塊148
5.2.3使用queries模塊155
5.3連接SQLite3數據庫156
5.4連接SQL Server數據庫158
5.5連接NoSQL數據庫161
5.5.1使用cassandra-driver連接Cassandra數據庫161
5.5.2使用PyMongo驅動連接MongoDB數據庫162
5.5.3使用redis-py連接Redis 165
第6章使用ORM操作數據庫169
6.1 ORM的背景170
6.2使用mysqlclient連接數據庫170
6.3使用Peewee連接數據庫174
6.3.1 Peewee的基本用法174
6.3.2使用Peewee、Flask與MySQL開發一個在線留言系統178
6.4使用Pony連接數據庫181
6.4.1 Pony的基礎知識181
6.4.2操作SQLite數據庫181
6.4.3操作MySQL數據庫186
6.5使用mongoengine連接MongoDB數據庫188
第7章特殊文本格式處理191
7.1使用Tablib模塊192
7.1.1基本用法192
7.1.2操作數據集中指定的行和列193
7.1.3刪除並導出不同格式的數據193
7.1.4生成一個Excel文件194
7.1.5處理多個數據集195
7.1.6使用標籤過濾數據197
7.1.7分離表格中的數據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繪製隨機漫步圖249
8.1.4使用ImageChops模塊合成圖片251
8.1.5使用ImageEnhance模塊增強圖像253
8.1.6使用ImageFilter模塊實現濾鏡功能255
8.1.7使用ImageDraw模塊繪製圖像256
8.1.8使用ImageFont模塊設置字體258
8.1.9繪製指定年份的日曆259
8.2使用hmap庫263
8.3使用pyBarcode庫創建條形碼264
8.4使用qrcode庫創建二維碼266
8.5使用scikit-image庫269
8.5.1讀取和顯示270
8.5.2像素操作272
8.5.3轉換操作274
8.5.4繪製圖像276
8.5.5圖像批處理280
8.5.6縮放和旋轉281
8.6使用face_recognition庫實現人臉識別283
8.6.1搭建開發環境283
8.6.2面部特徵284
8.6.3識別人臉286
8.6.4攝像頭實時識別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提高開發效率316
9.2使用pyglet庫317
9.2.1安裝並嘗試使用pyglet 317
9.2.2實現OpenGL操作319
9.2.3開發一個pyglet遊戲320
9.3使用toga庫330
9.3.1安裝toga庫並創建第一個 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章數據可視化340
10.1使用Matplotlib庫341
10.1 .1搭建Matplotlib庫的使用環境341
10.1.2初級繪圖342
10.1.3自定義散點圖樣式345
10.1.4繪製柱狀圖346
10.1.5繪製多幅子圖350
10.1.6繪製曲線352
10.1.7繪製隨機漫步圖357
10.1.8大數據分析某年的* 高溫度和*低溫度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文件讀取數據371
10.4.3選擇指定數據376
10.4.4日期相關操作379
10.5使用NumPy庫383
10.5.1安裝NumPy庫383
10.5.2數組對象384
10.5.3使用通用函數388
10.5.4使用Matplotlib庫393
第11章第三方多媒體庫395
11.1使用audiolazy庫處理數字 信號396
11.1.1安裝並嘗試使用 audiolazy庫396
11.1.2實現巴特沃斯濾波器396
11.2使用audioread庫實現音頻 解碼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視頻並轉換為MP4文件406
11.5使用mutagen庫407
11.5.1安裝並嘗試使用mutagen庫407
11.5.2獲取指定音頻文件的標籤信息408
11.5.3批量設置視頻文件的封面圖片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開發一個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設置視頻屬性432
11.8.6使用moviepy庫和Matplotlib庫實現數據的動態可視化433
11.8.7動畫合成434
11.8.8使用moviepy庫和numpy庫實現文本動態化435
11.9使用scikit-video庫436
11.9.1安裝並嘗試使用scikit-video庫436
11.9.2寫入視頻437
11.9.3視頻基準測試438
11.9.4圖像的讀取和寫入439
11.9.5視頻的讀取和寫入440
第12章第三方網絡開發庫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