Python快速編程入門(第3版)
黑馬程序員
相關主題
商品描述
本書以PyCharm為主要開發工具,採用理論與實訓案例相結合的編寫方式,系統性地講解Python的相關知識。本書共11章,其中,第1~10章介紹Python 語言的理論知識,內容包括Python概述、Python基礎知識、流程控制、字符串、組合數據類型、函數、文件與數據格式化、面向對象、異常、Python計算生態與常用庫等;第11章運用前面所學知識開發一個實戰項目——飛機大戰游戲。除第1章和第11章外,其他章均配有豐富的實訓案例,讀者可以一邊學習一邊練習,鞏固所學知識,並在實踐中提升實際開發能力。
本書配套豐富的教學資源,包括教學PPT、教學大綱、教學設計、教學視頻、源代碼、課後習題及答案等。此外,為幫助讀者更好地學習本書,編者團隊還提供在線答疑服務,希望可以幫助更多讀者。
本書可作為高等教育本、專科院校電腦相關專業的教材,也可作為編程愛好者的自學參考書。
作者簡介
黑马程序员成立于2006年,由中国Java培训先行者张孝祥老师发起,联合全球最大的中文IT社区CSDN、中关村软件园共同创办的一家专业教育机构。办学至今,我们一直坚守着“为千万人少走弯路而著书,为中华软件之崛起而讲课”的办学理念,坚持培养优秀软件应用工程师的宏伟目标,在累计培养的十万余名学员中,其中90%的学员均已在北、上、广等一线城市高薪就业。为了迎合软件市场的需求,我们陆续开设了Java、网页平面、PHP、.Net、iOS、C/C++、Android等9个专业方向的课程,并且未来将逐渐开设其他专业方向的课程。随着传智播客的日益壮大,除了北京总部,我们在上海、广州、武汉、成都、深圳等地也创立了直营分支机构,传智播客俨然已成为了国内具有专业口碑的IT教育机构。
目錄大綱
第1章 Python概述 1
1.1 認識Python 1
1.1.1 Python的發展歷程 1
1.1.2 Python的特點 2
1.2 Python解釋器的安裝與程序的運行 3
1.2.1 安裝Python解釋器 4
1.2.2 Python程序的運行方式 6
1.3 Python開發工具 7
1.3.1 常用的開發工具 7
1.3.2 PyCharm的下載與安裝 8
1.3.3 使用PyCharm編寫Python
程序 10
1.4 Python模塊 12
1.4.1 模塊的安裝 12
1.4.2 模塊的導入與使用 13
1.5 本章小結 14
1.6 習題 14
第2章 Python基礎知識 16
2.1 代碼格式 16
2.1.1 註釋 16
2.1.2 縮進 17
2.1.3 語句換行 18
2.2 標識符和關鍵字 18
2.2.1 標識符 18
2.2.2 關鍵字 20
2.3 變量和數據類型 20
2.3.1 變量 20
2.3.2 數據類型 21
2.3.3 變量的輸入與輸出 22
2.4 實訓案例 23
2.4.1 輸出購物小票 23
2.4.2 輸出植樹證書 24
2.5 數字類型 24
2.5.1 整型 24
2.5.2 浮點型 25
2.5.3 復數類型 25
2.5.4 布爾類型 26
2.5.5 數字類型轉換 26
2.6 運算符 27
2.6.1 算術運算符 28
2.6.2 賦值運算符 28
2.6.3 比較運算符 29
2.6.4 邏輯運算符 29
2.6.5 成員運算符 30
2.6.6 位運算符 30
2.6.7 運算符優先級 33
2.7 實訓案例 34
2.7.1 間隔時間計算器 34
2.7.2 身體質量指數 34
2.8 本章小結 34
2.9 習題 34
第3章 流程控制 36
3.1 條件語句 36
3.1.1 if語句 36
3.1.2 if-else語句 37
3.1.3 if-elif-else語句 38
3.1.4 if嵌套 39
3.2 實訓案例 40
3.2.1 會員等級評定 40
3.2.2 物流費用計算 41
3.3 循環語句 41
3.3.1 while語句 41
3.3.2 for語句 42
3.3.3 循環嵌套 43
3.4 實訓案例 44
3.4.1 賬號密碼檢測功能 44
3.4.2 輸出五子棋棋盤 44
3.5 跳轉語句 44
3.5.1 break語句 45
3.5.2 continue語句 45
3.6 階段案例——房貸計算器 45
3.7 本章小結 46
3.8 習題 46
第4章 字符串 49
4.1 字符串介紹 49
4.2 格式化字符串 51
4.2.1 使用%格式化字符串 51
4.2.2 使用format()方法格式化
字符串 53
4.2.3 使用f-string格式化字符串 54
4.3 實訓案例 55
4.3.1 地區時間格式轉換器 55
4.3.2 製作名片 55
4.4 字符串的常見操作 55
4.4.1 字符串的查找與替換 56
4.4.2 字符串的分割與拼接 57
4.4.3 刪除字符串的指定字符 58
4.4.4 字符串大小寫轉換 58
4.4.5 字符串對齊 59
4.5 實訓案例 59
4.5.1 過濾不良詞語 59
4.5.2 文字排版工具 60
4.6 本章小結 60
4.7 習題 60
第5章 組合數據類型 62
5.1 認識組合數據類型 62
5.2 列表 64
5.2.1 創建列表 64
5.2.2 訪問列表元素 65
5.2.3 添加列表元素 66
5.2.4 列表元素排序 67
5.2.5 刪除列表元素 68
5.2.6 列表推導式 69
5.3 元組 71
5.4 實訓案例 72
5.4.1 成語接龍 72
5.4.2 中文數字對照表 72
5.5 集合 72
5.6 字典 74
5.6.1 創建字典 74
5.6.2 字典的訪問 74
5.6.3 字典元素的添加和修改 75
5.6.4 字典元素的刪除 76
5.6.5 字典推導式 77
5.7 實訓案例 78
5.7.1 詞頻統計 78
5.7.2 手機通訊錄 78
5.8 組合數據類型使用運算符 78
5.9 本章小結 79
5.10 習題 79
第6章 函數 81
6.1 函數概述 81
6.2 函數的定義和調用 82
6.2.1 定義函數 82
6.2.2 調用函數 83
6.3 函數參數的傳遞 85
6.3.1 位置參數的傳遞 85
6.3.2 關鍵字參數的傳遞 85
6.3.3 默認參數的傳遞 86
6.3.4 參數的打包與解包 86
6.3.5 混合傳遞 88
6.4 函數的返回值 88
6.5 變量作用域 89
6.5.1 局部變量和全局變量 89
6.5.2 global和nonlocal關鍵字 91
6.6 實訓案例 92
6.6.1 智能聊天機器人 92
6.6.2 飲品自動售貨機 93
6.7 特殊形式的函數 93
6.7.1 遞歸函數 93
6.7.2 匿名函數 95
6.8 實訓案例 95
6.8.1 兔子數列 95
6.8.2 商品排序 95
6.9 階段案例——學生管理系統 96
6.10 本章小結 96
6.11 習題 96
第7章 文件與數據格式化 98
7.1 文件概述 98
7.2 文件的基礎操作 100
7.2.1 文件的打開與關閉 100
7.2.2 文件的讀寫 101
7.2.3 文件的定位讀寫 104
7.3 文件與目錄管理 106
7.4 實訓案例 108
7.4.1 信息安全策略——文件備份 108
7.4.2 用戶賬戶管理 108
7.5 數據維度與數據格式化 109
7.5.1 基於維度的數據分類 109
7.5.2 一維數據和二維數據的存儲與
讀寫 110
7.5.3 多維數據的格式化 112
7.6 本章小結 113
7.7 習題 113
第8章 面向對象 115
8.1 面向對象概述 115
8.2 類與對象的基礎應用 117
8.2.1 類的定義 117
8.2.2 對象的創建與使用 118
8.3 類的成員 118
8.3.1 屬性 118
8.3.2 方法 121
8.3.3 私有成員 124
8.4 特殊方法 125
8.4.1 構造方法 125
8.4.2 析構方法 126
8.5 實訓案例 127
8.5.1 航天器信息查詢工具 127
8.5.2 生詞本 128
8.6 封裝 129
8.7 繼承 130
8.7.1 單繼承 130
8.7.2 多繼承 131
8.7.3 重寫 132
8.8 多態 133
8.9 運算符重載 133
8.10 實訓案例 135
8.10.1 人機猜拳游戲 135
8.10.2 自定義列表 135
8.11 階段案例——銀行管理系統 135
8.12 本章小結 136
8.13 習題 136
第9章 異常 138
9.1 異常概述 138
9.1.1 認識異常 138
9.1.2 異常類 139
9.2 異常捕獲語句 141
9.2.1 try-except語句 141
9.2.2 try-except-else語句 144
9.2.3 try-except-finally語句 144
9.3 拋出異常 145
9.3.1 使用raise語句拋出異常 145
9.3.2 使用assert語句拋出異常 146
9.3.3 異常的傳遞 147
9.4 自定義異常 148
9.5 實訓案例 149
9.5.1 頭像圖片格式檢測 149
9.5.2 反詐查詢系統 149
9.6 本章小結 149
9.7 習題 150
第10章 Python計算生態與
常用庫 151
10.1 Python計算生態概覽 151
10.2 Python生態庫的構建與發布 155
10.2.1 模塊的構建與使用 156
10.2.2 包的構建與導入 157
10.2.3 生態庫的發布 157
10.3 常用的內置庫 158
10.3.1 time庫 158
10.3.2 random庫 162
10.3.3 turtle庫 163
10.4 實訓案例 168
10.4.1 繪制彩虹 168
10.4.2 二十四節氣倒計時 169
10.5 常用的第三方庫 169
10.5.1 jieba庫 170
10.5.2 wordcloud庫 171
10.5.3 Pygame庫 173
10.6 實訓案例 185
10.6.1 出場人物統計 185
10.6.2 小猴子接香蕉 186
10.7 本章小結 186
10.8 習題 186
第11章 飛機大戰游戲 188
11.1 游戲簡介 188
11.1.1 游戲介紹 188
11.1.2 游戲典型場景 191
11.2 項目準備 192
11.2.1 類設計 193
11.2.2 模塊設計 194
11.2.3 創建項目 194
11.3 游戲框架搭建 194
11.3.1 游戲類的設計 194
11.3.2 游戲框架實現 196
11.4 游戲背景和英雄飛機 198
11.4.1 精靈和精靈組 198
11.4.2 派生游戲精靈子類 199
11.4.3 繪制游戲背景和英雄飛機 200
11.4.4 實現游戲背景連續滾動 201
11.5 指示器面板 203
11.5.1 指示器面板類的設計 203
11.5.2 指示器面板類的準備 205
11.5.3 使用精靈實現文本標簽 207
11.5.4 顯示和修改游戲數據 209
11.5.5 保存和加載最好成績 213
11.5.6 顯示游戲狀態 214
11.5.7 游戲結束後重置面板 217
11.6 逐幀動畫和飛機類 218
11.6.1 逐幀動畫介紹 218
11.6.2 逐幀動畫的基本實現 218
11.6.3 飛機類的設計與實現 220
11.6.4 派生敵機子類 223
11.6.5 派生英雄飛機子類 229
11.7 碰撞檢測 234
11.7.1 碰撞檢測的基本實現 234
11.7.2 敵機撞毀英雄飛機 236
11.7.3 英雄飛機發射子彈 238
11.7.4 英雄飛機拾取道具 242
11.8 背景音樂和音效 244
11.8.1 測試背景音樂和音效的播放 245
11.8.2 音樂播放器類的設計 246
11.8.3 加載和播放背景音樂 246
11.8.4 加載和播放音效 247
11.9 項目打包 249
11.10 本章小結 250