Python從入門到項目實踐

Python從入門到項目實踐

《Python 從入門到項目實踐》 一書從入門學習者的角度出發,通過簡潔有趣的語言、豐富多彩的實例、挑戰大腦的任務、貼近開發實戰的項目,循序漸進地讓讀者在實踐中學習,在實踐中提升實際開發能力。全書共分7 篇:基礎篇、進階篇、高級篇、框架篇、遊戲開發篇、人工智慧開發篇和商業項目篇,內容包括:踏上Python 之旅、熟悉PyCharm 開發環境、Python 輸入與輸出、變數與基本數據類型、運算符、列表和元組、字元串與正則表達式、流程控制、循環結構語句、字典與集合、類和對象、模組、檔案與IO、使用Python 運算元據庫、進程和執行緒、網路編程、異常處理與程式調試、常用的GUI 框架、pygame 遊戲框架、網路爬蟲框架、Flask Web 框架的使用、Django Web 框架的使用、谷歌小恐龍遊戲、飛機大戰遊戲、微信跳一跳輔助工具、汽車之家圖片抓取工具、AI 圖像識別工具、e 起去旅行網站、看店寶(京東版)。本書不僅會帶您暢遊於Python 開發的精彩世界,啟迪編程思維,更能讓您領略Python 迷人的開發魅力!

內容提要

在正式學習之前,首先要和讀者朋友探討一下編程是什麼,尤其是對於一些剛接觸這個領域的讀者來說,編程似乎十分抽象,簡單地說,就是對計算機下達指令,讓計算機能夠根據編程人員的命令進行工作。想想就讓人興奮,計算機上五花八門的遊戲、有趣有料的程式都可以依託編程手段實現,掌握了編程的方法我們就能叩開計算機世界的大門,創造一個屬於自己的“世界”。

人與人交往用人類的語言,而人與計算機互動就需要用到計算機語言。與人類語言相比,計算機語言簡單多了,只認“二進制”的操作指令。但是這種指令很難被大多數人學習和使用,因此,人們就發明了程式語言,通過這些語言和計算機進行溝通。而Python 就是眾多程式語言中的一種,深受編程人員的喜好和追捧。

作業系統:Windows 7、Windows 8、Windows 10 或者Ubuntu。

Python 版本:3.7.0。

開發工具:PyCharm 2018.2。

開發模組:pygame、PyQt5、matplotlib、BeautifulSoup、pymysql、urllib、urllib.request、bs4、PIL。

Flask版本:0.12.2。

API 接口:百度API 接口

MySQL 圖形化管理軟體:Navicat for MySQL。

瀏覽器:Google Chrome 瀏覽器。。

書籍目錄

第1 章踏上Python 之旅.......................2

1.1 Python概述............................................................. 2

·1.1.1 Python簡介................................................. 2

·1.1.2 Python的版本............................................. 2

·1.1.3 Python的套用領域...................................... 3

1.2 搭建Python開發環境............................................... 3

·1.2.1 安裝Python ................................................. 3

·1.2.2 解決提示“'python'不是內部或外部命令……”.... 7

1.3 使用IDLE編寫“hello world”................................. 9

1.4 實戰任務................................................................11

·任務1:輸出“Go Big Or Go Home”.................11

·任務2:輸出“星星之火,可以燎原”................ 12

·任務3:模擬輸出用戶登錄輸入視窗................... 12

第2 章熟悉PyCharm 開發環境..........13

2.1 PyCharm下載與安裝............................................. 13

·2.1.1 PyCharm下載........................................... 13

·2.1.2 PyCharm安裝........................................... 15

2.2 測試PyCharm開發環境......................................... 16

·2.2.1 運行PyCharm ........................................... 16

·2.2.2 創建工程目錄............................................ 17

·2.2.3 編寫“hello world”程式........................... 19

2.3 PyCharm常用操作................................................ 22

·2.3.1 在同一個工程下創建多個程式檔案........... 22

·2.3.2 運行程式的多種方法................................. 23

·2.3.3 保存程式................................................... 23

·2.3.4 關閉程式或工程........................................ 23

·2.3.5 刪除程式................................................... 24

·2.3.6 打開最近的程式檔案................................. 24

·2.3.7 調試斷點................................................... 24

2.4 熟悉PyCharm開發環境......................................... 28

2.5 PyCharm開發環境配置......................................... 32

·2.5.1 作者信息等設定........................................ 32

·2.5.2 設定Python解析器.................................... 34

·2.5.3 設定開發環境字型..................................... 34

2.6 實戰任務............................................................... 35

·任務1:輸出“eat our own dog food”.............. 35

·任務2:輸出大商電器商品倉庫標籤................... 35

·任務3:輸出超市購物小票.................................. 35

·任務4:輸出字元畫——史努比........................... 36

第3 章Python 輸入與輸出...................37

3.1 基本輸入和輸出.................................................... 37

·3.1.1 使用print()函式輸出.................................. 37

·3.1.2 使用input()函式輸入................................. 40

3.2 注釋.................................................................. 41

·3.2.1 單行注釋................................................... 41

·3.2.2 多行注釋................................................... 42

·3.2.3 中文編碼聲明注釋.................................... 43

3.3 代碼縮進............................................................... 43

3.4 編碼規範............................................................... 45

3.5 命名規範............................................................... 46

3.6 實戰任務............................................................... 47

·任務1:輸出人類發展經歷的各個時代................ 47

·任務2:輸出嚮往的生活場景.............................. 47

·任務3:輸出字母、數字或符號的ASCII狀態值... 47

·任務4:用ASCII碼輸出賈伯斯名言..................... 48

第4 章變數與基本數據類型................49

4.1 保留字與標識符.................................................... 49

·4.1.1 保留字....................................................... 49

·4.1.2 標識符....................................................... 51

4.2 變數.................................................................. 52

·4.2.1 理解Python中的變數................................. 52

·4.2.2 變數的定義與使用..................................... 52

4.3 基本數據類型........................................................ 53

·4.3.1 數字類型................................................... 54

·4.3.2 字元串類型............................................... 56

·4.3.3 布爾類型................................................... 58

·4.3.4 數據類型轉換............................................ 58

4.4 實戰任務............................................................... 60

·任務1:計算愛國者飛彈的總數量....................... 60

·任務2:大聲說出你的愛..................................... 61

·任務3:愛的密碼................................................ 61

第5 章運算符..................................63

5.1 算術運算符............................................................ 63

5.2 賦值運算符............................................................ 66

5.3 比較(關係)運算符............................................. 68

5.4 邏輯運算符............................................................ 69

5.5 位運算符............................................................... 70

5.6 運算符的優先權.................................................... 73

5.7 實戰任務............................................................... 73

·任務1:破譯爬蟲項目實踐活動的日期密碼......... 73

·任務2:實現連加計算......................................... 74

·任務3:計算並輸出人工智慧時代可連線設備的數量...... 74

第6 章列表和元組...............................75

6.1 序列.................................................................. 75

·6.1.1 索引.......................................................... 75

·6.1.2 切片.......................................................... 76

·6.1.3 序列相加................................................... 77

·6.1.4 乘法(Multiplying).................................. 78

·6.1.5 檢查某個元素是否是序列的成員(元素).......... 78

·6.1.6 計算序列的長度、最大值和最小值........... 79

6.2 列表.................................................................. 80

·6.2.1 列表的創建和刪除..................................... 80

·6.2.2 訪問列表元素............................................ 82

·6.2.3 遍歷列表................................................... 82

·6.2.4 添加、修改和刪除列表元素...................... 84

·6.2.5 對列表進行統計計算................................. 86

·6.2.6 對列表進行排序........................................ 88

·6.2.7 列表推導式............................................... 89

6.3 元組.................................................................. 91

·6.3.1 元組的創建和刪除..................................... 91

·6.3.2 訪問元組元素............................................ 94

·6.3.3 修改元組元素............................................ 94

·6.3.4 元組推導式............................................... 95

·6.3.5 元組與列表的區別..................................... 97

6.4 實戰任務............................................................... 97

·任務1:解決“千年蟲”問題.............................. 97

·任務2:降序輸出7家全國零售百強電商的銷售額........ 98

·任務3:推算2018年全國零售百強電商銷售額.... 98

第7 章字元串與正則表達式................99

7.1 字元串常用操作.................................................... 99

·7.1.1 拼接字元串............................................... 99

·7.1.2 計算字元串的長度................................... 100

·7.1.3 截取字元串............................................. 101

·7.1.4 分割字元串............................................. 102

·7.1.5 檢索字元串............................................. 103

·7.1.6 字母的大小寫轉換................................... 106

·7.1.7 去除字元串中的空格和特殊字元............. 107

·7.1.8 格式化字元串.......................................... 109

7.2 正則表達式基礎...................................................112

·7.2.1 行定位符..................................................112

·7.2.2 元字元......................................................113

·7.2.3 限定符......................................................113

·7.2.4 字元類......................................................114

·7.2.5 排除字元..................................................114

·7.2.6 選擇字元..................................................114

·7.2.7 轉義字元..................................................115

·7.2.8 分組.........................................................115

·7.2.9 在Python中使用正則表達式語法..............115

7.3 使用re模組實現正則表達式操作...........................116

·7.3.1 匹配字元串..............................................116

·7.3.2 替換字元串............................................. 120

·7.3.3 使用正則表達式分割字元串.................... 120

7.4 實戰任務............................................................. 121

·任務1:模擬拼多多砍價................................... 121

·任務2:判斷是否買到假貨“康帥博”.............. 122

第8 章流程控制................................123

8.1 程式結構............................................................. 123

8.2 選擇語句............................................................. 124

·8.2.1 最簡單的if語句........................................ 124

·8.2.2 if…else語句............................................ 126

·8.2.3 if…elif…else語句.................................... 128

·8.2.4 if語句的嵌套............................................ 129

8.3 使用and連線條件語句......................................... 130

8.4 使用or連線條件語句............................................ 132

8.5 使用not語句........................................................ 133

8.6 實戰任務............................................................. 134

·任務1:王多魚能繼承百億遺產嗎?................. 134

·任務2:分標準計算打車費................................ 134

第9 章循環結構語句.........................135

9.1 for循環................................................................ 135

9.2 while循環............................................................ 138

9.3 循環嵌套............................................................. 140

9.4 跳轉語句............................................................. 141

·9.4.1 break語句............................................... 142

·9.4.2 continue語句........................................... 143

9.5 實戰任務............................................................. 144

·任務1:實現單位換算器................................... 144

·任務2:計算分期購機月還款額......................... 144

第2 篇進階篇

第10 章字典與集合...........................146

10.1 字典.............................................................. 146

·10.1.1 字典的創建和刪除................................. 147

·10.1.2 通過“鍵值對”訪問字典...................... 150

·10.1.3 遍歷字典............................................... 151

·10.1.4 添加、修改和刪除字典元素.................. 152

·10.1.5 字典推導式........................................... 153

10.2 集合.............................................................. 154

·10.2.1 集合的創建........................................... 154

·10.2.2 集合的添加和刪除................................. 155

·10.2.3 集合的交集、並集和差集運算............... 157

10.3 列表、元組、字典和集合的區別....................... 157

10.4 實戰任務........................................................... 158

·任務1:手機通訊錄管理................................... 158

·任務2:輸出2018年世界人工智慧大會的

出席人員名單....................................... 158

第11 章用函式實現模組化程式設計...159

11.1 函式的創建和調用............................................. 159

·11.1.1 創建一個函式........................................ 159

·11.1.2 調用函式............................................... 161

·11.1.3 pass空語句........................................... 161

11.2 參數傳遞........................................................... 162

·11.2.1 了解形式參數和實際參數...................... 162

·11.2.2 位置參數............................................... 163

·11.2.3 關鍵字參數............................................ 165

·11.2.4 為參數設定默認值................................. 165

·11.2.5 可變參數............................................... 166

11.3 返回值........................................................... 168

11.4 變數的作用域.................................................... 169

·11.4.1 局部變數............................................... 170

·11.4.2 全局變數............................................... 170

11.5 匿名函式........................................................... 172

11.6 常用Python內置函式......................................... 173

11.7 實戰任務........................................................... 174

·任務1:設計精英黑客對講機............................ 174

·任務2:貨幣兌換.............................................. 174

第12 章類和對象..............................175

12.1 面向對象概述.................................................... 175

·12.1.1 對象...................................................... 175

·12.1.2 類.......................................................... 176

·12.1.3 面向對象程式設計的特點...................... 176

12.2 類的定義和使用................................................ 177

·12.2.1 定義類................................................... 177

·12.2.2 創建類的實例........................................ 177

·12.2.3 “魔術”方法—__init__() .................. 178

·12.2.4 創建類的成員並訪問............................. 179

·12.2.5 訪問限制............................................... 182

12.3 屬性.............................................................. 184

·12.3.1 創建用於計算的屬性............................. 184

·12.3.2 為屬性添加安全保護機制...................... 185

12.4 繼承.............................................................. 186

·12.4.1 繼承的基本語法.................................... 186

·12.4.2 方法重寫............................................... 186

·12.4.3 派生類中調用基類的__init__()方法....... 187

12.5 實戰任務........................................................... 188

·任務1:銀行賬戶資金交易管理......................... 188

·任務2:計算由《我不是藥神》引起關注的

格列衛花銷........................................... 188

第13 章模組.................................189

13.1 模組概述........................................................... 189

13.2 自定義模組........................................................ 189

·13.2.1 創建模組............................................... 190

·13.2.2 使用import語句導入模組....................... 190

·13.2.3 使用from…import語句導入模組............ 191

·13.2.4 模組搜尋目錄........................................ 191

13.3 以主程式的形式執行......................................... 193

13.4 Python中的包.................................................... 195

·13.4.1 Python程式的包結構............................. 196

·13.4.2 創建和使用包........................................ 196

13.5 引用其他模組.................................................... 198

·13.5.1 導入和使用標準模組............................. 199

·13.5.2 第三方模組的下載與安裝...................... 200

13.6 實戰任務........................................................... 201

·任務1:高鐵售票系統....................................... 201

·任務2:輸出商品及其價格信息......................... 201

第14 章檔案與IO .............................202

14.1 基本檔案操作.................................................... 202

·14.1.1 創建和打開檔案.................................... 202

·14.1.2 關閉檔案............................................... 205

·14.1.3 打開檔案時使用with語句....................... 205

·14.1.4 寫入檔案內容........................................ 206

·14.1.5 讀取檔案............................................... 206

14.2 目錄操作........................................................... 210

·14.2.1 os和os.path模組................................... 210

·14.2.2 路徑...................................................... 212

·14.2.3 判斷目錄是否存在................................. 214

·14.2.4 創建目錄............................................... 214

·14.2.5 刪除目錄............................................... 216

·14.2.6 遍歷目錄............................................... 217

14.3 高級檔案操作.................................................... 218

·14.3.1 刪除檔案............................................... 219

·14.3.2 重命名檔案和目錄................................. 220

·14.3.3 獲取檔案基本信息................................. 221

14.4 實戰任務........................................................... 222

·任務1:記錄用戶登錄日誌................................ 222

·任務2:模擬淘寶客服自動回復......................... 222

第3 篇高級篇

第15 章使用Python 運算元據庫......224

15.1 資料庫編程接口................................................ 224

·15.1.1 連線對象............................................... 224

·15.1.2 游標對象............................................... 226

15.2 使用SQLite ....................................................... 226

·15.2.1 創建資料庫檔案.................................... 226

·15.2.2 操作SQLite ........................................... 227

15.3 使用MySQL ...................................................... 229

·15.3.1 下載安裝MySQL ................................... 229

·15.3.2 安裝PyMySQL ...................................... 233

·15.3.3 連線資料庫........................................... 234

·15.3.4 創建數據表........................................... 234

·15.3.5 操作MySQL數據表............................... 235

15.4 實戰任務........................................................... 237

·任務1:記錄用戶登錄日誌(資料庫版).......... 237

·任務2:降序輸出7家全國零售百強電商的

銷售額(資料庫版)............................ 237

第16 章進程和執行緒...........................238

16.1 什麼是進程........................................................ 238

16.2 創建進程的常用方式......................................... 239

·16.2.1 使用multiprocessing模組創建進程........ 239

·16.2.2 使用Process子類創建進程.................... 242

·16.2.3 使用進程池Pool創建進程...................... 244

16.3 通過佇列實現進程間通信.................................. 245

·16.3.1 佇列簡介............................................... 247

·16.3.2 多進程佇列的使用................................. 247

·16.3.3 使用佇列在進程間通信......................... 249

16.4 什麼是執行緒........................................................ 250

16.5 創建執行緒........................................................... 251

·16.5.1 使用threading模組創建執行緒.................. 251

·16.5.2 使用Thread子類創建執行緒..................... 252

16.6 執行緒間通信........................................................ 253

·16.6.1 什麼是互斥鎖........................................ 254

·16.6.2 使用互斥鎖........................................... 255

·16.6.3 使用佇列線上程間通信......................... 257

16.7 關於執行緒需要注意的兩點.................................. 258

·16.7.1 進程和執行緒的區別................................. 258

·16.7.2 多執行緒非全局變數是否要加鎖............... 258

16.8 實戰任務........................................................... 259

·任務1:手機號碼滾動抽獎................................ 259

·任務2:預測2018年世界網際網路大會

“烏鎮飯局”........................................ 259

第17 章網路編程..............................260

17.1 網路基礎........................................................... 260

·17.1.1 為什麼要使用通信協定......................... 260

·17.1.2 TCP/IP簡介........................................... 261

·17.1.3 UDP簡介............................................... 262

·17.1.4 Socket簡介........................................... 263

17.2 TCP編程........................................................... 264

·17.2.1 創建TCP伺服器.................................... 264

·17.2.2 創建TCP客戶端.................................... 266

·17.2.3 執行TCP伺服器和客戶端...................... 266

17.3 UDP編程........................................................... 269

·17.3.1 創建UDP 伺服器................................... 269

·17.3.2 創建UDP 客戶端................................... 270

·17.3.3 執行UDP 伺服器和客戶端..................... 271

17.4 實戰任務........................................................... 271

·任務1:網路嗅探器........................................... 271

·任務2:掃描並輸出區域網路占用的IP位址.......... 271

第18 章異常處理及程式調試............272

18.1 異常概述........................................................... 272

18.2 異常處理語句.................................................... 273

·18.2.1 try…except語句.................................... 274

·18.2.2 try…except…else語句.......................... 274

·18.2.3 try…except…finally語句....................... 275

·18.2.4 使用raise語句拋出異常......................... 277

18.3 程式調試........................................................... 277

·18.3.1 使用自帶的IDLE進行程式調試.............. 277

·18.3.2 使用assert語句調試程式....................... 280

第4 篇框架篇

第19 章常用的GUI 框架..................284

19.1 初識GUI ............................................................ 284

·19.1.1 什麼是GUI ............................................ 284

·19.1.2 常用的GUI框架..................................... 285

19.2 wxPython框架的使用........................................ 285

·19.2.1 安裝wxPython ...................................... 285

·19.2.2 創建一個wx.App的子類........................ 286

·19.2.3 直接使用wx.App ................................... 286

·19.2.4 使用wx.Frame框架............................... 287

·19.2.5 常用控制項............................................... 288

·19.2.6 BoxSizer布局........................................ 293

·19.2.7 事件處理............................................... 297

19.3 PyQt框架的使用................................................ 299

·19.3.1 安裝PyQt .............................................. 299

·19.3.2 使用第三方開發工具............................. 299

·19.3.3 創建主窗體........................................... 303

·19.3.4 常用控制項............................................... 306

·19.3.5 布局管理............................................... 310

·19.3.6 信號與槽的關聯.....................................311

·19.3.7 資源檔案的使用.................................... 313

第20 章pygame 遊戲框架.................318

20.1 初識pygame...................................................... 318

·20.1.1 安裝pygame ......................................... 318

·20.1.2 pygame常用模組.................................. 319

20.2 pygame的基本使用........................................... 321

第21 章網路爬蟲框架.......................327

21.1 初識網路爬蟲.................................................... 327

·21.1.1 網路爬蟲概述........................................ 327

·21.1.2 網路爬蟲的分類.................................... 327

·21.1.3 網路爬蟲的基本原理............................. 328

21.2 網路爬蟲的常用技術......................................... 329

·21.2.1 Python的網路請求................................ 329

·21.2.2 請求headers處理.................................. 332

·21.2.3 網路逾時............................................... 333

·21.2.4 代理服務............................................... 334

·21.2.5 HTML解析之BeautifulSoup .................. 335

21.3 網路爬蟲開發常用框架...................................... 338

·21.3.1 Scrapy爬蟲框架.................................... 338

·21.3.2 Crawley爬蟲框架.................................. 338

·21.3.3 PySpider爬蟲框架................................ 339

21.4 Scrapy爬蟲框架的使用..................................... 339

·21.4.1 搭建Scrapy爬蟲框架............................. 339

·21.4.2 創建Scrapy項目.................................... 341

·21.4.3 創建爬蟲............................................... 342

·21.4.4 獲取數據............................................... 344

第22 章Flask Web 框架的使用.........347

22.1 Web框架簡介.................................................... 347

·22.1.1 什麼是Web框架.................................... 347

·22.1.2 常用的Web框架.................................... 348

22.2 Flask框架的使用............................................... 348

·22.2.1 安裝虛擬環境........................................ 349

·22.2.2 安裝Flask .............................................. 350

·22.2.3 第一個Flask程式................................... 351

·22.2.4 開啟調試模式........................................ 352

·22.2.5 路由...................................................... 352

·22.2.6 靜態檔案............................................... 355

·22.2.7 模板...................................................... 355

第23 章Django Web 框架的使用......360

23.1 安裝Django Web框架....................................... 360

23.2 Django框架的使用............................................ 361

·23.2.1 創建一個Django項目............................ 361

·23.2.2 創建App ................................................ 363

·23.2.3 數據模型(models) ................................. 364

·23.2.4 管理後台............................................... 369

·23.2.5 路由(urls) .............................................. 370

·23.2.6 表單(forms) ........................................... 372

·23.2.7 視圖(views) ........................................... 374

·23.2.8 Django模板........................................... 376

第5 篇遊戲開發篇

第24 章谷歌小恐龍遊戲...................380

24.1 項目概述........................................................... 380

24.2 設計流程........................................................... 381

24.3 系統預覽........................................................... 381

24.4 開發工具準備.................................................... 382

24.5 谷歌小恐龍遊戲的實現...................................... 382

·24.5.1 主窗體的實現........................................ 382

·24.5.2 滾動地圖的顯示.................................... 384

·24.5.3 可以跳躍的小恐龍................................. 385

·24.5.4 障礙物的出現........................................ 387

·24.5.5 碰撞與積分........................................... 390

第25 章飛機大戰遊戲.......................392

25.1 概述.............................................................. 392

25.2 系統預覽........................................................... 393

25.3 開發工具準備.................................................... 393

25.4 飛機大戰遊戲的實現......................................... 393

·25.4.1 主窗體的實現........................................ 393

·25.4.2 遊戲界面設定........................................ 396

·25.4.3 用戶互動操作的實現............................. 397

·25.4.4 對子彈的處理........................................ 398

·25.4.5 敵機的處理........................................... 398

·25.4.6 顯示遊戲得分........................................ 400

·25.4.7 遊戲結束繪製遊戲結束畫面.................. 400

·25.4.8 更新排行榜內容.................................... 401

·25.4.9 判斷滑鼠的單擊位置............................. 402

·25.4.10 遊戲排行榜......................................... 403

第26 章微信跳一跳輔助工具............405

26.1 項目概述........................................................... 405

26.2 設計流程........................................................... 406

26.3 系統預覽........................................................... 406

26.4 開發工具準備.................................................... 407

26.5 開發前的準備工作............................................. 407

·26.5.1 PIL模組的安裝...................................... 408

·26.5.2 PIL模組的使用...................................... 408

·26.5.3 matplotlib模組的使用............................ 409

·26.5.4 ADB工具............................................... 410

26.6 微信跳一跳輔助工具..........................................411

·26.6.1 窗體的實現............................................411

·26.6.2 同步手機螢幕的畫面............................. 412

·26.6.3 選擇起點與終點實現跳躍...................... 413

·26.6.4 實現重選功能........................................ 416

26.7 微信跳一跳輔助工具(自動)........................... 416

·26.7.1 同步手機螢幕的畫面............................. 416

·26.7.2 掃描棋子與棋盤.................................... 417

·26.7.3 實現自動跳躍........................................ 420

第6 篇人工智慧開發篇

第27 章汽車之家圖片抓取工具.........424

27.1 概述.............................................................. 424

27.2 設計流程........................................................... 424

27.3 系統預覽........................................................... 425

27.4 開發工具準備.................................................... 426

27.5 汽車之家圖片抓取工具的實現........................... 427

·27.5.1 登錄功能............................................... 427

·27.5.2 主窗體設計........................................... 428

·27.5.3 創建爬蟲類........................................... 429

·27.5.4 開啟爬蟲類........................................... 430

·27.5.5 查看大圖功能........................................ 433

第28 章AI 圖像識別工具...................434

28.1 概述.............................................................. 434

28.2 設計流程........................................................... 434

28.3 系統預覽........................................................... 435

28.4 開發工具準備.................................................... 436

28.5 開發前的準備工作............................................. 437

·28.5.1 申請百圖AI接口.................................... 437

·28.5.2 urllib、urllib.request模組...................... 438

·28.5.3 json模組................................................ 439

28.6 AI圖像識別工具的開發...................................... 440

·28.6.1 根據項目設計製作窗體......................... 440

·28.6.2 添加分類............................................... 440

·28.6.3 選擇識別的圖片.................................... 441

·28.6.4 銀行卡圖像識別.................................... 443

·28.6.5 植物圖像識別........................................ 445

·28.6.6 複製識別結果到剪貼簿......................... 446

第7 篇商業項目篇

第29 章e 起去旅行網站....................448

29.1 系統功能設計.................................................... 448

·29.1.1 系統功能結構........................................ 448

·29.1.2 系統業務流程........................................ 449

29.2 系統開發必備.................................................... 450

·29.2.1 系統開發環境........................................ 450

·29.2.2 資料夾組織結構.................................... 450

29.3 資料庫設計........................................................ 451

·29.3.1 資料庫概要說明.................................... 451

·29.3.2 數據表模型........................................... 452

·29.3.3 數據表關係........................................... 453

29.4 前台用戶模組設計............................................. 454

·29.4.1 會員註冊功能實現................................. 454

·29.4.2 會員登錄功能實現................................. 461

·29.4.3 會員退出功能實現................................. 462

29.5 前台首頁模組設計............................................. 463

·29.5.1 推薦景區功能實現................................. 464

·29.5.2 推薦地區功能實現................................. 466

·29.5.3 搜尋景區功能實現................................. 467

29.6 景區模組設計.................................................... 470

·29.6.1 查看景區功能實現................................. 470

·29.6.2 查看遊記功能實現................................. 473

·29.6.3 收藏景區功能實現................................. 474

·29.6.4 查看收藏景區功能實現......................... 477

29.7 關於我們模組設計............................................. 480

29.8 後台模組設計.................................................... 484

·29.8.1 實現管理員登錄功能............................. 484

·29.8.2 實現景區管理功能................................. 485

·29.8.3 實現地區管理功能................................. 497

·29.8.4 實現遊記管理功能................................. 497

·29.8.5 實現會員管理功能................................. 498

·29.8.6 實現日誌管理功能................................. 498

第30 章看店寶(京東版)................500

30.1 項目概述........................................................... 500

30.2 設計流程........................................................... 501

30.3 系統預覽........................................................... 501

30.4 開發工具準備.................................................... 504

30.5 主窗體界面設計................................................ 504

·30.5.1 對主窗體進行可視化設計...................... 504

·30.5.2 將可視化窗體轉換為.py檔案................. 506

·30.5.3 設定窗體及控制項背景............................. 506

·30.5.4 創建窗體控制檔案................................. 506

·30.5.5 主窗體預覽效果.................................... 507

30.6 設計資料庫表結構............................................. 508

30.7 初始數據的爬取................................................ 509

·30.7.1 爬取排行信息........................................ 509

·30.7.2 爬取價格信息........................................ 512

·30.7.3 爬取評價信息........................................ 514

·30.7.4 批量寫入資料庫.................................... 517

30.8 圖表分析數據.................................................... 520

·30.8.1 餅形圖展示評價信息............................. 520

·30.8.2 分析出版社所占比例的條形圖............... 521

·30.8.3 折線圖分析價格走勢............................. 522

·30.8.4 Top10數據展示..................................... 523

30.9 商品排行展示.................................................... 527

·30.9.1 熱銷商品排行榜.................................... 527

·30.9.2 熱門商品展示........................................ 529

30.10 關注商品......................................................... 531

·30.10.1 分析關注商品的預警信息.................... 531

·30.10.2 重點商品的關注與取消....................... 533

30.11 商品行銷預警.................................................. 539

·30.11.1 商品中評、差評預警........................... 539

·30.11.2 商品價格變化預警............................... 541

30.12 關注商品圖表分析........................................... 543

·30.12.1 關注商品評價分析餅圖....................... 544

·30.12.2 關注商品出版社占有比例.................... 546

30.13 其他功能......................................................... 549

附錄1 內置函式......................................................... 551

附錄2 PyCharm常用快捷鍵...................................... 554

附錄3 PyCharm常用設定.......................................... 556

相關詞條

熱門詞條

聯絡我們