本書共包含7個部分,即緒論、5個項目、課程拓展。緒論部分介紹了課程的定位及課程的素質目標、能力目標、知識目標等;5 個項目分別涵蓋了 Python 在文件操作、數據分析、數據可視化、管理信息系統及網絡爬蟲等方面的相關知識點、綜合項目案例及技能訓練;課程拓展部分主要介紹與本課程緊密相關的崗位、競賽、證書及相關的知識和技能需求。
本書既可作為高等職業教育人工智能應用技術、軟件技術、計算機應用技術等專業的教材使用,也可供Python語言編程愛好者參考使用。
1. 職業標準與教學標準深度融合,為學生未來的職業發展打下堅實的基礎。
2. 實踐與理論的緊密結合,確保教學內容與行業需求高度一致。
黨的二十大報告強調,推動戰略性新興產業融合集群發展,構建新一代信息技術、人工智能等一批新的增長引擎。新一代信息技術的高速發展,不僅為我國加快推進智造強國、網絡強國和數字中國建設提供了堅實有力的支撐,而且將促進百行千業升級蝶變,成為推動我國經濟高質量發展的新動能。Python 作為人工智能、信息技術領域應用最廣泛的編程語言之一,在各行各業中扮演著至關重要的角色。通過系統地學習 Python,學生能夠通過編程解決實際問題,優化用戶體驗,并利用數據分析支持決策,與全球數字化發展趨勢保持同步。這就要求學生不僅要精通編程技能,還需在實際應用中不斷地適應和創新,開拓新的應用領域和解決方案。
本書基于崗課賽證融通的一體化開發,為相關課程和對應職業技能等級證書的學習和考核提供系統性的內容支撐。本書采用項目導向、任務驅動的組織模式,通過構建真實的編程任務場景來解析軟件開發中所需的理論知識和技能要點。
在本書的創作過程中,編寫團隊進行了深入的市場調研,分析了眾多領先技術企業對Python程序設計崗位的專業技能需求。同時,編寫團隊廣泛搜集并研究了大量國內外關于計算機科學和軟件開發的文獻資料,以確保教材內容既具有理論深度,又符合實際應用需求,從而形成了以下幾個鮮明的特色。
1. 職業標準與教學標準深度融合
本書融合了先進的教學方法和課程要求,全面覆蓋了從Python基礎知識到實際應用的各個環節。通過這種全面而深入的教學方式,學生在課程結束時將能夠熟練掌握關鍵的工作技能,從而在職場競爭中占據優勢,并為未來的職業發展打下堅實的基礎。
2. 實踐與理論的緊密結合
本書通過校企合作模式,實現了理論與實踐的緊密結合,確保教學內容與行
業需求高度一致。每個教學單元都圍繞實際案例展開,包括理論講解、任務實施和技能訓練,為學生提供真實的行業實戰經驗。
同時,本書開發有配套的在線開放課程、教學課件、微課、習題答案等類型豐富的數字化教學資源,實現了教學內容的電子化、知識展示的多維化、信息流通的網聯化、信息管理的自動化、學習互動的增強化,可進一步提升學生自主學習的效率。
本書由劉藝琴擔任主編,由劉藝琴、馬千知、余燦玲、周勤生、劉春華共同編寫。其中,劉藝琴負責全書統稿并編寫前言、緒論、項目1和附錄A;余燦玲負責編寫項目2;馬千知負責編寫項目3;周勤生負責編寫項目4;劉春華負責編寫項目5。在編寫過程中,編者參考了大量相關書籍及最新研究資料,且大部分均已在書后參考文獻中列出,在此一并表示衷心感謝!
由于作者水平有限,書中不足之處在所難免,敬請廣大讀者及同行專家批評指正。
編 者
2025年1月
緒論 1
項目1 人口普查數據文件讀寫 5
知識準備 7
1.1 數據 7
1.1.1 數據的概念 7
1.1.2 數據的獲取途徑 8
1.2 計算機程序 9
1.2.1 計算機程序的概念 9
1.2.2 編寫程序的目的 9
1.2.3 程序處理的對象 10
1.3 Python的安裝與使用 10
1.3.1 Python的下載及安裝 10
1.3.2 Python的命令行使用方式 12
1.3.3 Python的文件操作方式 12
1.4 變量 13
1.4.1 變量的概念 13
1.4.2 變量的命名規則 14
1.5 程序結構 15
1.5.1 順序結構 15
1.5.2 分支結構 16
1.5.3 循環結構 17
1.6 函數 18
1.6.1 函數的概念 18
1.6.2 函數的類型及使用 18
1.7 庫 24
1.7.1 標準庫 24
1.7.2 第三方庫 25
1.8 注釋 26
1.8.1 單行注釋 26
1.8.2 多行注釋 27
任務實施 27
1. 人口普查數據讀取 27
2. 人口普查數據保存 29
知識拓展 30
1. os庫的文件操作 30
2. os庫的路徑操作 31
3. 相對路徑和絕對路徑 32
項目2 受高等教育人口情況統計 36
知識準備 38
2.1 環境搭建 38
2.1.1 Anaconda的安裝 38
2.1.2 Jupyter Notebook的使用 39
2.2 數據類型 42
2.2.1 基本數據類型 42
2.2.2 復合數據類型 45
2.2.3 數據類型的查看 51
2.2.4 數據類型的轉換 52
2.3 控制語句 53
2.3.1 if語句 53
2.3.2 for循環語句 55
2.3.3 while循環語句 56
2.3.4 嵌套循環 57
2.4 輸入輸出 57
2.4.1 輸入 58
2.4.2 輸出 58
任務實施 62
1. 全國大專學歷總人數及占比 62
2. 各地區大專學歷總人數及占比 63
3. 各地區大專人數占比與全國水平的比較 64
4. 各地區受高等教育人數及占比 65
知識拓展 66
1. Python運算符及其優先級 66
2. break語句與continue語句 71
3. 字典推導式與列表推導式 72
項目3 勞動力人口數據分析 77
知識準備 79
3.1 數據分析與數據可視化 79
3.2 pandas庫 79
3.2.1 pandas庫簡介 79
3.2.2 Series對象 80
3.2.3 DataFrame對象 85
3.3 matplotlib庫 89
3.3.1 matplotlib庫簡介 89
3.3.2 畫布的創建 90
3.3.3 子圖的創建 91
3.3.4 標簽信息的添加 92
3.3.5 常見圖表的繪制 94
3.3.6 顏色、線型、標記的設置 96
3.3.7 繪制圖形的保存 97
3.4 數據合并 98
3.4.1 merge()函數 98
3.4.2 join()函數 99
3.4.3 concat()函數 100
3.5 數據清洗 101
3.5.1 空值和缺失值的處理 102
3.5.2 重復值的處理 103
3.5.3 異常值的處理 103
任務實施 104
1. 全國勞動力人口數據的獲取與讀取 104
2. 全國勞動力人口數據的預處理 108
3. 2019年全國勞動力人口分布情況分析 112
4. 2019年各省區市勞動力人口占比分析 115
5. 20092019年全國勞動力總人口變化情況分析 117
6. 20092019年top5省區市勞動力人口變化情況分析 119
知識拓展 122
1. numpy庫簡介 122
2. ndarray數組對象 122
3. ndarray數組的索引和切片 125
4. ndarray數組的運算 126
5. numpy庫中的統計函數 128
項目4 人口信息管理系統開發 133
知識準備 135
4.1 Pycharm開發工具 135
4.1.1 Pycharm簡介 135
4.1.2 Pycharm的下載 135
4.1.3 Pycharm的安裝 136
4.1.4 Pycharm的基本使用 138
4.2 函數 139
4.2.1 函數的定義 139
4.2.2 函數的調用 142
4.2.3 函數的參數 143
4.2.4 函數的返回值 144
4.3 類和對象 145
4.3.1 面向對象 145
4.3.2 類和對象的概念 146
4.3.3 類和對象的創建與使用 147
4.3.4 封裝 149
4.4 繼承 150
4.4.1 繼承的概念 150
4.4.2 繼承的使用 152
4.5 異常 154
4.5.1 異常的概念和使用 154
4.5.2 內置異常類型 156
任務實施 157
1. 界面設計 158
2. 人口數據加載 170
3. 用戶登錄 178
4. 人口信息添加 181
5. 人口信息修改 185
6. 人口信息刪除 194
7. 人口信息搜索 196
8. 項目總結 197
知識拓展 199
1. Lambda表達式 199
2. 函數的遞歸 200
3. 多態性 201
4. 靜態方法 202
5. 特殊方法 203
項目5 人口數據爬取 208
知識準備 210
5.1 HTTP的基本原理 210
5.1.1 URL 210
5.1.2 超文本 210
5.1.3 HTTP請求及響應的基本過程 211
5.2 HTML網頁基礎 213
5.2.1 HTML 213
5.2.2 HTML標簽及其基本結構 214
5.2.3 節點樹及節點間的關系 215
5.2.4 HTML標簽屬性 216
5.3 網絡爬蟲的基本原理 217
5.4 requests庫 218
5.4.1 requests庫的安裝 218
5.4.2 requests庫的基本用法 218
5.5 BeautifulSoup庫 219
5.5.1 BeautifulSoup庫的安裝 219
5.5.2 BeautifulSoup庫的基本用法 220
5.5.3 標簽屬性和值的獲取 221
5.5.4 文檔樹搜索 222
任務實施 223
1. 獲取網頁 224
2. 分析網頁 225
3. 解析網頁 225
4. 存儲數據 226
知識拓展 227
1. JavaScript渲染 227
2. JSON數據的請求 228
3. Scrapy簡介 229
附錄A 課程拓展 235
參考文獻 239