python项目案例开发pdf-Python项目案例开发从入门到实战——爬虫、游戏
資料簡介:
本書以Python 3.5為編程環境,從基本的程序設計思想入手,逐步展開Python語言教學,是一本面向廣大編程學習者的程序設計類圖書。本書以案例帶動知識點的講解,將Python知識點分解到各個不同的案例,每個案例各有側重點,同時展示實際項目的設計思想和設計理念,使讀者可以舉一反三。 本書案例具有實用性,例如校園網搜索引擎、小小翻譯器、抓取百度圖片這些爬蟲案例略加修改可以應用到實際項目中;還有通過微信通信協議開發微信機器人、機器學習的文本分類、基于卷積神經網絡的手寫體識別等案例;另外是一些大家耳熟能詳的游戲案例,例如連連看、推箱子、中國象棋、網絡五子棋、兩人麻將、人物拼圖和飛機大戰等游戲。通過本書,讀者將掌握Python編程技術和技巧,學會面向對象的設計方法,了解程序設計的所有相關內容。本書不僅為讀者列出了完整的代碼,同時對所有的源代碼都進行了非常詳細的解釋,通俗易懂、圖文并茂。掃描每章提供的二維碼可觀看知識點的視頻講解。 本書適用于Python語言學習者、程序設計人員和游戲編程愛好者。
資料目錄:
第1章 Python基礎知識 1
1.1 Python語言簡介 1
1.2 Python語法基礎 2
1.2.1 Python數據類型 2
1.2.2 序列數據結構 4
1.2.3 Python控制語句 12
1.2.4 Python函數與模塊 18
1.3 Python面向對象設計 22
1.3.1 定義和使用類 22
1.3.2 構造函數 23
1.3.3 析構函數 24
1.3.4 實例屬性和類屬性 24
1.3.5 私有成員與公有成員 25
1.3.6 方法 26
1.3.7 類的繼承 27
1.3.8 多態 29
1.3.9 面向對象應用案例——撲克牌發牌程序 31
1.4 Python圖形界面設計 34
1.4.1 創建Windows窗口 35
1.4.2 幾何布局管理器 35
1.4.3 Tkinter組件 39
1.4.4 Tkinter字體 49
1.4.5 Python事件處理 51
1.4.6 圖形界面設計應用案例——開發猜數字游戲 55
1.5 Python文件的使用 57
1.5.1 打開/建立文件 57
1.5.2 讀取文本文件 59
1.5.3 寫文本文件 60
1.5.4 文件內移動 62
1.5.5 文件的關閉 63
1.5.6 二進制文件的讀/寫 64
1.6 Python的第三方庫 66
第2章 序列應用——猜單詞游戲 67
2.1 猜單詞游戲功能介紹 67
2.2 程序設計的思路 67
2.3 關鍵技術——random模塊 68
2.4 程序設計的步驟 71
第3章 數據庫應用——智力問答測試 73
3.1 智力問答測試功能介紹 73
3.2 程序設計的思路 73
3.3 關鍵技術 74
3.3.1 訪問數據庫的步驟 74
3.3.2 創建數據庫和表 75
3.3.3 數據庫的插入、更新和刪除操作 76
3.3.4 數據庫表的查詢操作 77
3.3.5 數據庫使用實例——學生通訊錄 77
3.4 程序設計的步驟 80
3.4.1 生成試題庫 80
3.4.2 讀取試題信息 81
3.4.3 界面和邏輯設計 81
第4章 調用百度API應用——小小翻譯器 83
4.1 小小翻譯器功能介紹 83
4.2 程序設計的思路 83
4.3 關鍵技術 84
4.3.1 urllib庫簡介 84
4.3.2 urllib庫的基本使用 84
4.4 程序設計的步驟 90
4.4.1 設計界面 90
4.4.2 使用百度翻譯開放平臺API 90
第5章 爬蟲應用——校園網搜索引擎 95
5.1 校園網搜索引擎功能分析 95
5.2 校園網搜索引擎系統設計 95
5.3 關鍵技術 98
5.3.1 正則表達式 98
5.3.2 中文分詞 103
5.3.3 安裝和使用jieba 103
5.3.4 為jieba添加自定義詞典 104
5.3.5 文本分類的關鍵詞提取 105
5.3.6 deque 106
5.4 程序設計的步驟 107
5.4.1 信息采集模塊——網絡爬蟲的實現 107
5.4.2 索引模塊——建立倒排詞表 111
5.4.3 網頁排名和搜索模塊 113
第6章 爬蟲應用——抓取百度圖片 116
6.1 程序功能介紹 116
6.2 程序設計的思路 116
6.3 關鍵技術 117
6.3.1 圖片文件下載到本地 117
6.3.2 爬取指定網頁中的圖片 117
6.3.3 BeautifulSoup庫概述 119
6.3.4 用BeautifulSoup庫操作解析HTML文檔樹 121
6.3.5 requests庫的使用 125
6.4 程序設計的步驟 133
6.4.1 分析網頁源代碼和網頁結構 133
6.4.2 設計代碼 136
第7章 itchat應用——微信機器人 139
7.1 itchat功能介紹 139
7.2 程序設計的思路 140
7.3 關鍵技術 140
7.3.1 安裝itchat 140
7.3.2 itchat的登錄微信 140
7.3.3 itchat的消息類型 141
7.3.4 itchat回復消息 143
7.3.5 itchat獲取賬號 145
7.3.6 itchat的一些簡單應用 147
7.3.7 Python調用圖靈機器人API實現簡單的人機交互 150
7.4 程序設計的步驟 152
7.5 開發消息同步機器人 153
第8章 微信網頁版協議應用——微信機器人 155
8.1 微信網頁版機器人功能介紹 155
8.2 微信網頁版機器人設計思路 155
8.2.1 分析微信網頁版API 155
8.2.2 API匯總 158
8.2.3 其他說明 164
8.3 程序設計的步驟 166
8.3.1 微信網頁版的運行流程 166
8.3.2 程序目錄 167
8.3.3 微信網頁版運行代碼的實現 167
8.4 擴展功能 170
8.4.1 自動回復 170
8.4.2 群發消息、定時發送消息、好友狀態檢測 173
8.4.3 自動邀請好友加入群聊 175
第9章 圖像處理——生成二維碼和驗證碼 178
9.1 二維碼介紹 178
9.2 二維碼生成和解析關鍵技術 179
9.2.1 qrcode庫的使用 179
9.2.2 PIL庫的使用 182
9.3 二維碼生成和解析程序設計的步驟 184
9.3.1 生成帶有圖標的二維碼 184
9.3.2 Python解析二維碼圖片 186
9.4 用Python生成驗證碼圖片 186
第10章 益智游戲——連連看游戲 189
10.1 連連看游戲介紹 189
10.2 程序設計的思路 190
10.3 關鍵技術 200
10.3.1 圖形繪制——Tinker的Canvas組件 200
10.3.2 Canvas上的圖形對象 200
10.4 程序設計的步驟 210
第11章 益智游戲——推箱子游戲 215
11.1 推箱子游戲介紹 215
11.2 程序設計的思路 216
11.3 關鍵技術 217
11.4 程序設計的步驟 218
第12章 娛樂游戲——兩人麻將游戲 224
12.1 麻將游戲介紹 224
12.1.1 麻將術語 224
12.1.2 牌數 224
12.2 兩人麻將游戲設計的思路 225
12.2.1 素材圖片 225
12.2.2 游戲的邏輯實現 226
12.2.3 碰/吃牌的判斷 226
12.2.4 和牌算法 227
12.2.5 實現計算機智能出牌 231
12.3 關鍵技術 233
12.3.1 聲音的播放 233
12.3.2 返回對應位置的組件 233
12.3.3 對保存麻將牌的列表排序 234
12.4 兩人麻將游戲設計的步驟 235
12.4.1 設計麻將牌類 235
12.4.2 設計游戲主程序 237
第13章 網絡編程案例——基于TCP的在線聊天程序 247
13.1 基于TCP的在線聊天程序簡介 247
13.2 關鍵技術 247
13.2.1 互聯網TCP/IP協議 247
13.2.2 IP協議和端口 248
13.2.3 TCP協議和UDP協議 249
13.2.4 Socket 249
13.2.5 多線程編程 254
13.3 在線聊天程序設計的步驟 256
13.3.1 在線聊天程序的服務器端 256
13.3.2 在線聊天程序的客戶端 259
第14章 網絡通信案例——基于UDP的網絡五子棋
游戲 263
14.1 網絡五子棋游戲簡介 263
14.2 五子棋游戲的設計思想 264
14.3 關鍵技術 267
14.3.1 UDP編程 267
14.3.2 自定義網絡五子棋游戲的通信協議 269
14.4 網絡五子棋游戲程序設計的步驟 271
14.4.1 服務器端程序設計的步驟 271
14.4.2 客戶端程序設計的步驟 276
第15章 益智游戲——中國象棋 281
15.1 中國象棋介紹 281
15.2 關鍵技術 282
15.3 中國象棋的設計思路 284
15.4 中國象棋實現的步驟 287
第16章 娛樂游戲——人物拼圖游戲 297
16.1 人物拼圖游戲介紹 297
16.2 程序設計的思路 298
16.3 關鍵技術 298
16.3.1 復制和粘貼圖像區域 298
16.3.2 調整尺寸和旋轉 298
16.3.3 轉換成灰度圖像 299
16.3.4 對像素進行操作 300
16.4 程序設計的步驟 300
16.4.1 Python處理圖片切割 300
16.4.2 游戲的邏輯實現 302
第17章 基于Pygame的游戲設計 306
17.1 Pygame基礎知識 306
17.1.1 安裝Pygame庫 306
17.1.2 Pygame的模塊 306
17.2 Pygame的使用 309
17.2.1 Pygame開發游戲的主要流程 309
17.2.2 Pygame的圖像/圖形繪制 311
17.2.3 Pygame的鍵盤和鼠標事件的處理 314
17.2.4 Pygame的字體使用 319
17.2.5 Pygame的聲音播放 320
17.2.6 Pygame的精靈使用 321
17.3 基于Pygame設計貪吃蛇游戲 326
17.4 基于Pygame設計飛機大戰游戲 333
17.4.1 游戲角色 333
17.4.2 游戲界面顯示 336
17.4.3 游戲的邏輯實現 338
第18章 機器學習案例——基于樸素貝葉斯算法的
文本分類 343
18.1 文本分類功能介紹 343
18.2 程序設計的思路 343
18.3 關鍵技術 344
18.3.1 貝葉斯算法的理論基礎 344
18.3.2 樸素貝葉斯分類 346
18.3.3 使用Python進行文本分類 348
18.4 程序設計的步驟 348
18.4.1 收集訓練數據 348
18.4.2 準備數據 349
18.4.3 分析數據 349
18.4.4 訓練算法 350
18.4.5 測試算法并改進 353
18.4.6 使用算法進行文本分類 354
18.5 使用樸素貝葉斯分類算法過濾垃圾郵件 355
18.5.1 收集訓練數據 355
18.5.2 將文本文件解析為詞向量 356
18.5.3 使用樸素貝葉斯算法進行郵件分類 357
18.5.4 改進算法 359
18.6 使用Scikit-Learn庫進行文本分類 360
18.6.1 文本分類常用的類和函數 360
18.6.2 案例實現 363
第19章 深度學習案例——基于卷積神經網絡的
手寫體識別 366
19.1 手寫體識別案例需求 366
19.2 深度學習的概念及關鍵技術 366
19.2.1 神經網絡模型 366
19.2.2 深度學習之卷積神經網絡 367
19.3 Python深度學習庫——Keras 372
19.3.1 Keras的安裝 372
19.3.2 Keras的網絡層 372
19.3.3 用Keras構建神經網絡 375
19.4 程序設計的思路 376
19.5 程序設計的步驟 377
19.5.1 MNIST數據集 377
19.5.2 手寫體識別案例實現 378
19.5.3 預測自己手寫圖像 382
第20章 詞云實戰——爬取豆瓣影評生成詞云 383
20.1 功能介紹 383
20.2 程序設計的思路 384
20.3 關鍵技術 385
20.3.1 安裝WordCloud 385
20.3.2 使用WordCloud 385
20.4 程序設計的步驟 389
參考文獻 397
總結
以上是生活随笔為你收集整理的python项目案例开发pdf-Python项目案例开发从入门到实战——爬虫、游戏的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑蓝屏怎么解决?一键快速解决蓝屏问题
- 下一篇: Python + selenium 爬取