本書全面介紹Python編程基礎及其相關知識的應用,講解如何利用Python解決部分實際問題。全書共10個單元,單元1介紹學習Python的準備工作,包括認識Python、搭建Python環(huán)境、安裝PyCharm等。單元2~單元8主要介紹Python基礎知識、Python數(shù)據(jù)結構、程序流程控制語句、函數(shù)、面向對象編程、文件基礎和Python常用的模塊/庫。單元9介紹綜合案例:學生測試程序設計。單元10介紹綜合案例:汽車銷售數(shù)據(jù)分析。除單元9、單元10外,本書其余各單元都包含單元實訓和單元測試,通過練習和操作實踐,讀者可鞏固所學的知識。
本書可用于“1+X”證書制度試點工作中的大數(shù)據(jù)應用開發(fā)(Python)職業(yè)技能等級(初級)證書相關內容的教學和培訓,也可作為高校大數(shù)據(jù)技術類專業(yè)課程的教材和大數(shù)據(jù)技術愛好者的自學用書。
暢銷教材重磅改版!新增實戰(zhàn)案例,學的更透,練的更深
依托單元式結構,精細講解Python知識點,貫穿大項目實戰(zhàn)
注重思政融合,緊扣新時代學生素質培養(yǎng)目標
“1+X”大數(shù)據(jù)應用開發(fā)(Python)職業(yè)技能等級證書(初級)配套教材
張治斌(北京信息職業(yè)技術學院),長期從事一線教學和教學管理工作,國家職業(yè)教育大數(shù)據(jù)技術專業(yè)教學標準研制組長、計算機應用技術專業(yè)、工業(yè)軟件開發(fā)專業(yè)國家教學標準研制成員,工業(yè)和信息化部人才培養(yǎng)評價專家、人事部《人工智能工程技術人員標準》審定專家;北京市特色高水平軟件與信息服務骨干專業(yè)群、新大陸數(shù)據(jù)智能工程師學院、數(shù)字商務專業(yè)群建設項目負責人,北京市優(yōu)秀青年骨干教師、北京市技能大賽優(yōu)秀工作者;主持參與省級以上教學改革、教育信息化融合創(chuàng)新等項目10余項;主參編教材8部,“十四五”職業(yè)教育國家規(guī)劃教材2部。
單元1 準備工作 1
1.1 認識Python 2
1.1.1 初識Python 2
1.1.2 Python的發(fā)展史 2
1.1.3 Python的特性 2
1.2 搭建Python環(huán)境 3
1.2.1 在Windows系統(tǒng)平臺安裝Python 3
1.2.2 配置PATH環(huán)境變量 6
【任務1-1】開啟Python之旅 9
1.3 安裝PyCharm 11
1.3.1 常用的Python IDE 11
1.3.2 認識PyCharm 12
1.3.3 安裝和使用PyCharm 12
【任務1-2】創(chuàng)建應聲蟲程序 21
單元小結 24
單元實訓 輸入和輸出 24
單元測試 24
單元2 Python基礎知識 26
2.1 Python的基礎語法 27
2.1.1 認識計算機語言 27
2.1.2 聲明Python編碼 27
2.1.3 加入代碼注釋 28
2.1.4 使用多行語句 29
2.1.5 縮進代碼 30
2.1.6 標識符與關鍵字 30
2.1.7 調試Python代碼 31
2.2 創(chuàng)建變量并提取里面的數(shù)值 32
2.2.1 Python變量 32
2.2.2 數(shù)值型變量的相互轉換 35
2.2.3 字符型數(shù)據(jù)的創(chuàng)建與基本操作 37
【任務2-1】提取賬單中的單價信息 42
2.3 Python的運算符 43
2.3.1 常用操作運算符 44
2.3.2 運算符優(yōu)先級 51
【任務2-2】計算圓形的各參數(shù) 53
【任務2-3】使用字符串索引計算n天后是星期幾 54
單元小結 55
單元實訓 計算旅游預算并提取地點信息 56
單元測試 56
單元3 Python數(shù)據(jù)結構 59
3.1 認識Python數(shù)據(jù)結構的組成 60
3.1.1 認識數(shù)據(jù)結構類型 60
3.1.2 區(qū)分可變數(shù)據(jù)類型與不可變數(shù)據(jù)類型 61
3.2 創(chuàng)建列表并進行增、刪、改、查等操作 61
3.2.1 創(chuàng)建列表 62
3.2.2 列表的基本操作 63
3.2.3 列表常用方法和函數(shù) 66
【任務3-1】實現(xiàn)某超市營業(yè)額數(shù)據(jù)的存儲、查詢與修改 71
3.3 創(chuàng)建元組并進行取值操作 72
3.3.1 創(chuàng)建元組 72
3.3.2 元組常用方法和函數(shù) 74
【任務3-2】實現(xiàn)學生成績管理 76
3.4 創(chuàng)建字典并進行增、刪、改、查等操作 76
3.4.1 解析字典的鍵與值 77
3.4.2 創(chuàng)建字典 77
3.4.3 提取字典元素 78
3.4.4 字典常用方法和函數(shù) 79
【任務3-3】創(chuàng)建簡單的貨物庫存查詢程序 83
3.5 創(chuàng)建集合并進行集合運算 85
3.5.1 創(chuàng)建集合 85
3.5.2 集合運算 86
3.5.3 集合常用方法和函數(shù) 89
【任務3-4】實現(xiàn)學生選課信息查詢 90
單元小結 92
單元實訓 構建并管理旅游日志數(shù)據(jù)結構 92
單元測試 92
單元4 程序流程控制語句 95
4.1 Python的選擇結構 96
4.1.1 if語句的基本結構 96
4.1.2 實現(xiàn)多路分支 97
【任務4-1】實現(xiàn)考試成績等級劃分 98
【任務4-2】設計和實現(xiàn)模擬QQ登錄程序 99
4.2 Python的循環(huán)結構 100
4.2.1 編寫for循環(huán)語句 100
4.2.2 編寫while循環(huán)語句 102
4.2.3 運用break、continue與pass語句 103
4.2.4 嵌套循環(huán) 104
【任務4-3】實現(xiàn)一組數(shù)的連加與連乘 105
【任務4-4】輸出斐波那契數(shù)列并求和 106
4.3 Python的選擇結構和循環(huán)結構進階用法 108
4.3.1 變量迭代 108
4.3.2 組合選擇結構與循環(huán)結構 109
4.3.3 列表解析 110
【任務4-5】使用冒泡排序法排序 111
【任務4-6】輸出數(shù)字金字塔 111
4.4 異常處理 114
4.4.1 異常的概念和類型 114
4.4.2 捕獲異常 116
4.4.3 拋出異常 119
【任務4-7】尋找和為目標值的數(shù)字對 120
單元小結 121
單元實訓 實現(xiàn)旅游日志輸入驗證與活動展示 122
單元測試 122
單元5 函數(shù) 125
5.1 自定義函數(shù) 126
5.1.1 認識自定義函數(shù) 126
5.1.2 設置函數(shù)參數(shù) 127
5.1.3 函數(shù)返回值 129
5.1.4 調用自定義函數(shù) 129
5.1.5 嵌套函數(shù) 131
5.1.6 區(qū)分局部變量和全局變量 132
【任務5-1】構建計算用餐總價格的函數(shù) 134
【任務5-2】構建求方差函數(shù) 135
5.2 匿名函數(shù) 137
5.2.1 創(chuàng)建并使用匿名函數(shù) 137
5.2.2 其他常用高階內置函數(shù) 138
【任務5-3】多種方式實現(xiàn)數(shù)據(jù)累加 140
5.3 存儲并導入函數(shù)模塊 141
5.3.1 存儲并導入整個模塊 141
5.3.2 導入函數(shù) 142
5.3.3 指定別名 143
【任務5-4】實現(xiàn)求方差函數(shù)存儲與導入 143
單元小結 145
單元實訓 實現(xiàn)預算計算、活動展示和輸入驗證的功能模塊化 145
單元測試 146
單元6 面向對象編程 149
6.1 認識面向對象編程 150
6.1.1 面向對象編程及相關內容 150
6.1.2 體會面向對象實例 152
6.1.3 面向對象的優(yōu)點 152
6.1.4 何時使用面向對象編程 153
6.2 類 153
6.2.1 定義和使用類 153
6.2.2 綁定self參數(shù) 154
6.2.3 類的專有方法 155
【任務6-1】創(chuàng)建Car類 156
6.3 對象 157
6.3.1 創(chuàng)建對象 158
6.3.2 刪除對象 158
6.3.3 對象的屬性和方法 159
【任務6-2】創(chuàng)建Car對象 162
6.4 迭代對象 164
6.4.1 生成迭代器 164
6.4.2 返回迭代器 166
【任務6-3】迭代Car類 169
6.5 類的繼承、重寫、封裝、多態(tài) 171
6.5.1 繼承父類屬性和方法 171
6.5.2 其他方法 175
【任務6-4】創(chuàng)建Land_Rover子類 176
單元小結 177
單元實訓 構建面向對象的旅游日志應用 177
單元測試 178
單元7 文件基礎 181
7.1 認識文件 182
7.1.1 文件的概念和類型 182
7.1.2 文件命名 183
7.2 讀寫TXT文件 183
7.2.1 讀取整個文件 183
7.2.2 使用with語句讀取文件 185
7.2.3 設置工作路徑 186
7.2.4 創(chuàng)建含有文件數(shù)據(jù)的列表 188
7.2.5 將數(shù)據(jù)寫入TXT文件 191
【任務7-1】讀取content.txt文件中的數(shù)據(jù) 193
7.3 讀寫CSV文件 194
7.3.1 讀取CSV文件 194
7.3.2 將數(shù)據(jù)寫入CSV文件 196
【任務7-2】存儲身高體重數(shù)據(jù)集 196
單元小結 198
單元實訓 實現(xiàn)旅游日志的數(shù)據(jù)保存與加載 199
單元測試 199
單元8 Python常用的模塊/庫 203
8.1 os模塊 204
8.1.1 認識os模塊 204
8.1.2 使用os模塊 205
【任務8-1】實現(xiàn)文件的增、刪、查、改操作 207
8.2 math模塊 208
8.2.1 認識math模塊 208
8.2.2 運用三角函數(shù) 210
8.2.3 運用冪函數(shù)與對數(shù)函數(shù) 211
【任務8-2】實現(xiàn)三角函數(shù)、冪函數(shù)與對數(shù)函數(shù)的數(shù)學計算 212
8.3 random模塊 213
8.3.1 認識random模塊 213
8.3.2 生成隨機浮點數(shù) 214
8.3.3 生成隨機整數(shù) 214
8.3.4 從序列中生成隨機元素 215
【任務8-3】實現(xiàn)抽獎游戲 216
8.4 re模塊 217
8.4.1 認識re模塊 217
8.4.2 re模塊常用函數(shù) 218
8.4.3 正則表達式語法 220
【任務8-4】匹配字符串信息 223
8.5 其他常用模塊/庫 225
8.5.1 turtle模塊 226
8.5.2 datetime模塊 226
8.5.3 jieba庫 228
8.5.4 PyInstaller庫 229
8.5.5 NumPy庫 229
單元小結 231
單元實訓 處理旅游日志的日期驗證與數(shù)據(jù)操作 231
單元測試 231
單元9 綜合案例:學生測試程序設計 234
9.1 了解學生測試程序設計的背景與方法 235
9.1.1 分析學生測試的背景 235
9.1.2 學生測試程序設計的思路和步驟 236
9.2 實現(xiàn)試卷的劃分 237
9.2.1 獲取學習幣值 237
9.2.2 抽取試卷 239
9.3 構建測試程序 240
9.3.1 讀取試卷 240
9.3.2 獲取標準答案 243
9.3.3 計算成績 244
單元小結 247
單元10 綜合案例:汽車銷售數(shù)據(jù) 分析 248
10.1 汽車銷售數(shù)據(jù)分析的背景與方法 249
10.1.1 分析汽車銷售的背景 249
10.1.2 汽車銷售數(shù)據(jù)分析的思路和步驟 250
10.2 探索與處理汽車銷售數(shù)據(jù) 250
10.2.1 探索性數(shù)據(jù)分析 251
10.2.2 數(shù)據(jù)清洗 252
10.2.3 時間維度拆解 252
10.3 分析市場消費趨勢及數(shù)據(jù)可視化 252
10.3.1 上半年汽車銷量和同比增長率分析 252
10.3.2 上半年各車級別的銷量分布分析 253
10.3.3 上半年各車系的銷量趨勢分析 254
10.4 結論與策略建議 255
單元小結 256