Python編程基礎(第2版)(微課版)
張治斌,張良均
相關主題
商品描述
本書以任務為導向,系統介紹Python編程基礎及其相關知識的應用,講解如何利用Python的知識解決部分實際問題。全書共9章,第1章介紹學習Python的準備工作,包括Python的由來、Python環境搭建、編輯器介紹與安裝等。第2~8章主要介紹Python的基礎知識、數據結構、程序流程控制語句、函數、面向對象編程、文件基礎和常用的內置模塊等內容。第9章介紹綜合案例:學生測試程序設計。除第9章外,本書其餘各章都包含了實訓和課後習題,通過練習和操作實踐,幫助讀者鞏固所學的內容。
本書可用於“1+X”證書制度試點工作中的大數據應用開發(Python)職業技能等級(初級)證書相關內容的教學和培訓,也可作為高校大數據技術類專業課程的教材和大數據技術愛好者的自學用書。
作者簡介
张治斌,北京信息职业技术学院软件与信息学院副院长、副教授,北京市职业院校优秀青年骨干教师。主要研究方向为软件开发、软件测试、数据挖掘技术,任职以来在国家级出版社、国际和国内学术期刊上出版、发表著作、论文近25万字;曾负责“国家职业教育计算机应用技术专业教学资源库”《数据挖掘》课程子项目建设。
目錄大綱
第 1章 準備工作 1
任務1.1 認識Python 2
1.1.1 初識Python 2
1.1.2 瞭解Python的起源 2
1.1.3 瞭解Python的特性 2
任務1.2 搭建Python環境 3
1.2.1 在Windows系統平臺安裝Python並配置環境變量 4
1.2.2 在Linux/UNIX系統平臺安裝Python並配置環境變量 10
1.2.3 開啟Python之旅 12
任務1.3 安裝PyCharm並創建一個應聲蟲程序 15
1.3.1 瞭解常用的Python IDE 15
1.3.2 認識PyCharm 16
1.3.3 安裝和使用PyCharm 16
1.3.4 創建應聲蟲程序 24
小結 26
實訓 輸入/輸出 27
課後習題 27
第 2章 Python基礎知識 28
任務2.1 掌握Python的固定語法 29
2.1.1 認識電腦語言 29
2.1.2 聲明Python編碼 29
2.1.3 加入代碼註釋 30
2.1.4 使用多行語句 31
2.1.5 縮進代碼 32
2.1.6 命名標識符與保留字符 33
2.1.7 調試Python代碼 33
任務2.2 創建字符串變量並提取裡面的數值 34
2.2.1 瞭解Python變量 35
2.2.2 數值型變量的相互轉換 37
2.2.3 字符型數據的創建與基本操作 39
2.2.4 任務實現 43
任務2.3 計算圓形的各參數 43
2.3.1 掌握常用操作運算符 44
2.3.2 掌握運算符優先級 52
2.3.3 任務實現 53
小結 54
實訓 54
實訓1 使用字符串索引求n天後是星期幾 54
實訓2 通過算術表達式計算幾何平均數 55
課後習題 55
第3章 Python數據結構 57
任務3.1 認識Python數據結構的組成 58
3.1.1 認識數據結構類型 58
3.1.2 區分可變量據類型與不可變量據類型 59
任務3.2 創建一個列表(list)並進行增刪改查操作 59
3.2.1 瞭解列表的概念與特性 60
3.2.2 創建列表 60
3.2.3 列表的基礎操作 61
3.2.4 掌握列表常用方法和函數 64
3.2.5 任務實現 69
任務3.3 轉換一個列表為元組(tuple)並進行取值操作 70
3.3.1 區分元組和列表 70
3.3.2 創建元組 70
3.3.3 掌握元組常用方法和函數 71
3.3.4 任務實現 74
任務3.4 創建一個字典(dictionary)並進行增刪改查操作 74
3.4.1 瞭解字典的概念與特性 75
3.4.2 解析字典的鍵與值 75
3.4.3 創建字典 75
3.4.4 提取字典元素 76
3.4.5 字典常用函數 78
3.4.6 任務實現 81
任務3.5 將兩個列表轉換為集合(set)並進行集合運算 82
3.5.1 瞭解集合的概念與特性 82
3.5.2 創建集合 83
3.5.3 集合運算 84
3.5.4 集合常用方法和函數 87
3.5.5 任務實現 88
小結 89
實訓 89
實訓1 使用列表對某超市銷售數據進行存儲、查詢與修改 89
實訓2 使用元組對學生成績進行管理 90
實訓3 使用字典創建簡單的貨物庫存查詢程序 90
實訓4 使用集合進行學生選課信息查詢 91
課後習題 91
第4章 程序流程控制語句 93
任務4.1 實現考試成績等級劃分 93
4.1.1 掌握if語句的基本結構 94
4.1.2 實現多路分支(else、elif) 94
4.1.3 運用try、except與else語句 95
4.1.4 任務實現 99
任務4.2 實現一組數的連加與連乘 100
4.2.1 編寫for循環語句 101
4.2.2 編寫while循環語句 102
4.2.3 運用break、continue與pass語句 103
4.2.4 任務實現 105
任務4.3 使用冒泡法排序 105
4.3.1 掌握嵌套循環 106
4.3.2 組合條件與循環 106
4.3.3 任務實現 107
任務4.4 輸出數字金字塔 108
4.4.1 多變量迭代 108
4.4.2 創建列表解析 109
4.4.3 任務實現 110
小結 111
實訓 111
實訓1 使用條件語句實現QQ登錄 111
實訓2 使用for循環輸出斐波那契數列並求和 112
課後習題 112
第5章 函數 114
任務5.1 自定義函數實現方差輸出 115
5.1.1 認識自定義函數 115
5.1.2 設置函數參數 115
5.1.3 返回函數值 117
5.1.4 調用自定義函數 118
5.1.5 掌握嵌套函數 120
5.1.6 區分局部變量和全局變量 121
5.1.7 任務實現 123
任務5.2 使用匿名函數添加列表元素 124
5.2.1 創建並使用匿名函數 124
5.2.2 其他常用高階函數 125
5.2.3 任務實現 127
任務5.3 存儲並導入函數模塊 128
5.3.1 存儲並導入整個模塊 128
5.3.2 導入函數 129
5.3.3 指定別名 129
5.3.4 任務實現 130
小結 131
實訓 131
實訓1 構建求指定區間內奇偶數的函數 131
實訓2 構建計算用餐總價格的函數 132
課後習題 132
第6章 面向對象編程 134
任務6.1 認識面向對象編程 135
6.1.1 瞭解面向對象編程及相關內容 135
6.1.2 體會面向對象實例 136
6.1.3 瞭解面向對象的優點 137
6.1.4 何時使用面向對象編程 137
任務6.2 創建Car類 138
6.2.1 定義和使用類 138
6.2.2 綁定self 139
6.2.3 掌握類的專有方法 140
6.2.4 任務實現 141
任務6.3 創建Car對象 142
6.3.1 創建對象 142
6.3.2 刪除對象 143
6.3.3 掌握對象的屬性和方法 144
6.3.4 任務實現 147
任務6.4 迭代Car對象 148
6.4.1 生成迭代器 148
6.4.2 返回迭代器 151
6.4.3 任務實現 153
任務6.5 產生Land_Rover對象(子類) 155
6.5.1 繼承父類屬性和方法 155
6.5.2 其他方法 159
6.5.3 任務實現 160
小結 161
實訓 161
實訓1 在游戲中創建角色的屬性並對特定屬性進行私有化 161
實訓2 在游戲中採用重載和繼承機制創建法師角色屬性 162
課後習題 162
第7章 文件基礎 164
任務7.1 認識文件 164
7.1.1 文件的概念和類型 165
7.1.2 文件命名 166
任務7.2 讀取.txt文件中的數據 166
7.2.1 讀取整個文件 167
7.2.2 使用with語句讀取文件 168
7.2.3 設置工作路徑 169
7.2.4 創建含有文件數據的列表 170
7.2.5 任務實現 172
任務7.3 保存數據為CSV格式文件 173
7.3.1 將數據寫入.txt文件 173
7.3.2 讀寫CSV文件 176
7.3.3 任務實現 178
小結 178
實訓 179
實訓1 計算身高體重數據集的均值和方差 179
實訓2 實現文件的數據寫入 179
課後習題 180
第8章 Python常用的內置模塊 182
任務8.1 使用os、shutil模塊實現文件的增刪改查等操作 183
8.1.1 認識os模塊及shutil模塊 183
8.1.2 使用os模塊 184
8.1.3 使用shutil模塊 186
8.1.4 任務實現 189
任務8.2 使用math模塊實現數學計算 190
8.2.1 認識math模塊 190
8.2.2 運用三角函數 192
8.2.3 運用冪函數與對數函數 193
8.2.4 任務實現 194
任務8.3 使用random模塊生成隨機數 194
8.3.1 認識random模塊 195
8.3.2 生成隨機浮點數 196
8.3.3 生成隨機整數 196
8.3.4 從序列中生成隨機元素 197
8.3.5 任務實現 198
任務8.4 使用datetime模塊獲得用戶用餐時長 198
8.4.1 認識datetime模塊 199
8.4.2 時間數據基礎操作 200
8.4.3 算術運算時間數據 204
8.4.4 任務實現 206
任務8.5 使用re模塊獲得字符串中的名字、電話 207
8.5.1 認識re模塊 207
8.5.2 掌握re模塊常用函數 208
8.5.3 瞭解正則表達式語法 210
8.5.4 任務實現 213
小結 214
實訓 214
實訓1 運用os、shutil模塊實現文件的增刪改查操作 214
實訓2 運用math模塊實現三角函數、冪函數與對數函數的數學計算 215
實訓3 運用random模塊實現抽獎游戲 215
實訓4 運用datetime模塊計算天數 216
實訓5 運用正則表達式匹配字符串信息 216
課後習題 217
第9章 綜合案例:學生測試程序設計 219
任務9.1 瞭解學生測試程序設計的背景與方法 220
9.1.1 分析學生測試的背景 220
9.1.2 瞭解學生測試程序設計的思路和步驟 221
任務9.2 實現試捲的劃分 222
9.2.1 獲取學習幣 223
9.2.2 抽取試捲 224
任務9.3 構建測試程序 225
9.3.1 讀取試捲 226
9.3.2 獲取標準答案 228
9.3.3 計算測試評分 230
小結 232