Python核心技術實戰詳解

Python核心技術實戰詳解

《Python核心技術實戰詳解》是2019年11月人民郵電出版社出版的圖書,作者是張洪朋、王衛軍。

基本介紹

  • 書名:Python核心技術實戰詳解
  • 作者:張洪朋
    王衛軍
  • ISBN:9787115512864
  • 頁數:412頁
  • 定價:89元
  • 出版社:人民郵電出版社
  • 出版時間:2019年11月
  • 裝幀:平裝
  • 開本:16開
內容簡介,圖書目錄,

內容簡介

本書逐層深入地介紹了Python的核心開發技術,並通過具體實例演練了各個知識點的使用流程。全書共10章,分別講解了正則表達式、網路編程、多執行緒開發、Tkinter圖形化界面開發、數據持久化、Pygame遊戲開發、數據可視化、Django Web開發、Flask Web開發和網路爬蟲開發等知識。全書簡潔而不失技術深度,內容豐富,以通俗易懂的文字介紹了複雜的案例,易於閱讀。
本書適用於已經了解Python基礎語法的讀者,以及希望進一步提高自己Python開發水平的讀者,也可以作為大專院校相關專業的師生用書和培訓學校的專業性教材。

圖書目錄

第 1章 正則表達式 1
1.1 基本語法 2
1.1.1 普通字元 2
1.1.2 非列印字元 2
1.1.3 特殊字元 3
1.1.4 使用小括弧指定分組 6
1.1.5 限定符 7
1.1.6 定位符 8
1.1.7 限定範圍和否定 9
1.1.8 運算符優先權 9
1.1.9 擴展表示法 9
1.2 使用re模組中的庫函式 10
1.2.1 re模組中的庫函式和屬性 10
1.2.2 使用函式compile() 11
1.2.3 使用函式match() 11
1.2.4 使用函式search() 13
1.2.5 使用函式findall() 14
1.2.6 使用函式sub()和subn() 15
1.2.7 使用函式split() 16
1.2.8 使用擴展符號 16
1.3 使用Pattern對象 17
1.4 正則表達式模式 17
第 2章 網路編程 22
2.1 套接字編程 23
2.1.1 Socket庫中的內置函式和
屬性 23
2.1.2 socket對象的內置函式和
屬性 24
2.1.3 使用socket建立TCP“客戶
端/伺服器端”連線 26
2.1.4 使用套接字建立UDP“客戶
端/伺服器端”連線 29
2.2 socketserver編程 30
2.2.1 socketserver模組基礎 30
2.2.2 socketserver對象 32
2.2.3 使用socketserver創建TCP
“客戶端/伺服器端”
程式 32
2.2.4 使用ThreadingTCPServer創
建“客戶端/伺服器端”通信
程式 33
2.3 使用select模組實現I/O多路
復用 34
2.3.1 select模組概述 34
2.3.2 I/O多路復用並實現讀/寫
分離 36
2.3.3 使用select實現一個可
並發的伺服器端 37
2.3.4 在Linux系統中使用
epoll() 38
2.4 urllib包 39
2.4.1 urllib包概述 39
2.4.2 使用urllib.request模組 39
2.4.3 使用urllib.parse模組 41
2.5 使用HTTP包 42
2.5.1 使用http.client模組 43
2.5.2 使用HTTPConnection對象
訪問指定網站 44
2.5.3 以客戶端的形式同HTTP
服務互動 45
2.6 收發電子郵件 47
2.6.1 開發支持POP3郵件協定的
程式 47
2.6.2 開發支持SMTP郵件協定
的程式 49
2.6.3 使用email庫 51
2.7 開發FTP程式 53
2.7.1 Python和FTP 53
2.7.2 創建一個FTP客戶端 53
2.8 解析XML 55
2.8.1 使用xml.etree.ElementTree
模組 55
2.8.2 SAX解析方法 59
2.8.3 使用DOM解析方法 62
2.8.4 使用xml.parsers.expat
模組 65
2.9 解析JSON數據 67
2.9.1 類型轉換 67
2.9.2 編碼和解碼 68
第3章 多執行緒開發 75
3.1 _thread模組 76
3.1.1 _thread模組概述 76
3.1.2 使用_thread模組 76
3.2 threading模組 77
3.2.1 threading模組的核心
方法 77
3.2.2 使用Thread對象 77
3.2.3 使用Lock和RLock
對象 80
3.2.4 使用Condition對象 85
3.2.5 使用Semaphore和
BoundedSemaphore對象 88
3.2.6 使用Event對象 90
3.2.7 使用Timer對象 92
3.2.8 使用local對象 93
3.2.9 使用Barrier對象 94
3.3 使用進程庫multiprocessing 95
3.3.1 使用Process 95
3.3.2 使用Pipe和Queue
對象 97
3.3.3 使用Connection對象 99
3.3.4 使用共享對象Shared 99
3.3.5 使用Manager對象 101
3.3.6 使用Proxy對象 102
3.3.7 使用進程池對象Pool 103
3.3.8 實現Actor並發編程 107
3.4 使用執行緒優先權佇列模組
queue 109
3.4.1 模組queue中的常用
方法 109
3.4.2 基本FIFO佇列 112
3.4.3 LIFO佇列 113
3.4.4 優先權佇列 113
3.4.5 輪詢多個執行緒佇列 113
3.5 使用模組subprocess創建進程 115
3.5.1 全新的run()方法 115
3.5.2 舊版本中的高級API 116
3.5.3 使用類Popen創建進程 117
第4章 Tkinter圖形化界面開發 120
4.1 Tkinter開發基礎 121
4.1.1 第 一個Tkinter程式 121
4.1.2 向視窗中添加組件 121
4.2 Tkinter控制項開發 122
4.2.1 Tkinter控制項概覽 122
4.2.2 使用按鈕控制項 123
4.2.3 使用文本框控制項 124
4.2.4 使用選單控制項 126
4.2.5 使用標籤控制項 127
4.2.6 使用單選按鈕和複選框
控制項 128
4.2.7 使用繪圖控制項 129
4.3 事件處理 131
4.3.1 Tkinter事件基礎 131
4.3.2 動態繪圖程式 134
4.3.3 製作一個計算器 136
4.4 實現對話框效果 137
4.4.1 創建訊息框 137
4.4.2 創建輸入對話框 138
4.4.3 創建“打開/保存檔案”
對話框 139
4.4.4 創建顏色選擇對話框 140
4.4.5 創建自定義對話框 141
4.4.6 開發一個記事本程式 142
4.5 使用偏函式 144
4.5.1 什麼是偏函式 145
4.5.2 桌面天氣預報程式 146
4.6 開發一個資源管理器 147
第5章 數據持久化 151
5.1 操作SQLite3資料庫 152
5.1.1 sqlite3模組介紹 152
5.1.2 使用sqlite3模組操作
SQLite3資料庫 157
5.1.3 SQLite和Python的
類型 159
5.1.4 事務控制 163
5.1.5 通過Tkinter和SQLite3
實現圖書管理系統 164
5.2 操作MySQL資料庫 167
5.2.1 搭建PyMySQL環境 167
5.2.2 實現資料庫連線 167
5.2.3 創建資料庫表 168
5.2.4 資料庫插入操作 169
5.2.5 資料庫查詢操作 169
5.2.6 資料庫更新操作 170
5.2.7 資料庫刪除操作 171
5.2.8 執行事務 171
5.2.9 通過Tkinter與MySQL開發
客戶通信錄系統 172
5.3 使用MariaDB資料庫 179
5.3.1 搭建MariaDB資料庫
環境 179
5.3.2 在Python程式中使用
MariaDB資料庫 181
5.3.3 使用MariaDB創建MySQL
資料庫 183
5.4 使用MongoDB資料庫 185
5.4.1 搭建MongoDB環境 185
5.4.2 在Python程式中使用
MongoDB資料庫 186
5.5 使用ORM運算元據庫 188
5.5.1 Python和ORM 189
5.5.2 使用SQLAlchemy 189
5.5.3 使用mongoengine 193
第6章 Pygame遊戲開發 195
6.1 安裝Pygame 196
6.2 Pygame開發基礎 197
6.2.1 Pygame框架中的模組 197
6.2.2 事件操作 199
6.2.3 顯示模式設定 201
6.2.4 字型處理 202
6.2.5 像素和顏色處理 203
6.2.6 使用Surface繪製圖像 204
6.2.7 使用pygame.draw繪圖
函式 204
6.3 經典小遊戲實戰 206
6.3.1 開發一個俄羅斯方塊
遊戲 206
6.3.2 仿微信打飛機遊戲 213
6.3.3 傳統貪吃蛇遊戲和智慧型
貪吃蛇遊戲 217
6.3.4 推箱子遊戲 226
6.3.5 吃蘋果遊戲 232
第7章 數據可視化 236
7.1 使用Matplotlib 237
7.1.1 搭建Matplotlib環境 237
7.1.2 初級繪圖 238
7.1.3 自定義散點圖樣式 241
7.1.4 繪製柱狀圖 242
7.1.5 繪製多幅子圖 247
7.1.6 繪製曲線 249
7.1.7 繪製隨機漫步圖 254
7.1.8 通過大數據分析某年最高
溫度和最低溫度 257
7.1.9 在Tkinter中使用Matplotlib
繪製圖表 258
7.2 使用Pygal庫 259
7.2.1 安裝Pygal庫 260
7.2.2 使用Pygal庫模擬
擲骰子 260
7.3 讀/寫處理CSV檔案 262
7.3.1 CSV模組介紹 263
7.3.2 操作CSV檔案 265
7.3.3 提取CSV數據並保存到
7.3.4 提取CSV數據並保存到
SQLite資料庫中 271
7.4 使用Pandas庫 272
7.4.1 安裝Pandas庫 272
7.4.2 從CSV檔案讀取數據 272
7.4.3 選擇指定數據 277
7.4.4 日期相關操作 280
7.5 使用NumPy庫 285
7.5.1 安裝NumPy庫 285
7.5.2 數組對象 285
7.5.3 使用通用函式 289
7.5.4 在NumPy庫中使用
Matplotlib庫 294
第8章 Django Web開發 296
8.1 引言 297
8.2 Django開發基礎 297
8.2.1 搭建Django環境 297
8.2.2 常用的Django命令 298
8.2.3 第 一個Django項目 299
8.2.4 在URL中傳遞參數 301
8.2.5 使用模板 303
8.2.6 使用表單 307
8.2.7 實現基本的資料庫操作 308
8.3 使用Django後台系統開發一個
部落格系統 309
8.4 開發一個新聞聚合系統 311
8.4.1 基本設定 312
8.4.2 獲取聚合信息 312
8.4.3 視圖處理 316
8.4.4 模板檔案 318
8.5 開發一個線上商城系統 321
8.5.1 系統設定 321
8.5.2 前台商城展示模組 322
8.5.3 購物車模組 325
8.5.4 訂單模組 329
第9章 Flask Web開發 333
9.1 Flask開發基礎 334
9.1.1 Django和Flask的
對比 334
9.1.2 安裝Flask 334
9.1.3 第 一個Flask Web程式 335
9.2 使用Flask開發Web程式 337
9.2.1 傳遞URL參數 337
9.2.2 使用會話和cookie 339
9.2.3 使用Flask-Script擴展 340
9.2.4 使用模板 341
9.2.5 使用Flask-Bootstrap
擴展 343
9.2.6 使用Flask-Moment擴展
本地化日期和時間 345
9.3 表單操作 347
9.3.1 使用Flask-WTF擴展 347
9.3.2 檔案上傳 350
9.4 使用資料庫 351
9.4.1 Python資料庫框架 351
9.4.2 會員註冊與登錄 351
9.4.3 使用Flask-SQLAlchemy
管理資料庫 354
9.5 收發電子郵件 356
9.5.1 使用Flask-Mail擴展 356
9.5.2 使用SendGrid傳送
郵件 359
9.6 通過Flask、MySQL和SqlAlchemy開發信息發布系統 361
9.6.1 使用Virtualenv創建虛擬
環境 361
9.6.2 使用Flask實現資料庫
遷移 362
9.6.3 具體實現 363
第 10章 網路爬蟲開發 370
10.1 網路爬蟲基礎 371
10.2 開發簡單的網路爬蟲套用
程式 371
10.3 使用爬蟲框架Scrapy 375
10.3.1 Scrapy框架基礎 375
10.3.2 搭建Scrapy環境 376
10.4 綜合實戰——桌面壁紙抓取
系統 377
10.4.1 創建項目 377
10.4.2 系統設定 377
10.4.3 創建資料庫 377
10.4.4 聲明需要格式化的
欄位 379
10.4.5 實現保存功能的類 379
10.4.6 實現具體的爬蟲 380
10.5 大數據實戰——抓取知乎數據並
分析 383
10.5.1 系統簡介 383
10.5.2 檢測“Redis”的狀態 383
10.5.3 賬號模擬登錄 383
10.5.4 實現具體抓取功能 386
10.5.5 大數據分析 390
10.6 大數據實戰——抓取大眾點評
數據並分析 391
10.6.1 系統配置 391
10.6.2 實現資料庫模組 394
10.6.3 實現爬蟲模組 398
10.6.4 大數據分析:提取指定
類型商家的信息 406
10.6.5 大數據分析:提取數據到
Excel表格中 406
10.6.6 大數據分析:創建價格
條形圖 408
10.6.7 大數據分析:創建用戶
男女比例和VIP比例柱
形圖 408
10.6.8 大數據分析:創建用戶
位置分布餅形圖 410
10.6.9 大數據分析:創建指定商
家點評信息的詞雲圖 410

相關詞條

熱門詞條

聯絡我們