Python 基礎與應用開發, 2/e
王德誌、李冬艷、楊陽、崔新偉
相關主題
商品描述
"本書是一本面向初學者的Python編程教材,系統講解了Python語言的語法、數據結構、程序設計以及應用開發。全書共11章,內容涵蓋Python語言概述、基本數據類型與運算、組合數據類型、選擇與循環語句結構、函數、文件操作、詞雲與PyInstaller庫應用、數據分析與數據可視化、圖形用戶界面(GUI)開發以及多個經典應用領域。本書以示例形式對Python功能進行講解,突出應用特色,讓讀者全面了解Python的各個應用領域。 本書講解簡潔明了,案例豐富,可作為高等學校計算機、軟件工程、計算機網絡和非計算機專業理工科等相關專業學生學習程序設計的教材,也可作為Python程序設計人員的參考用書。 "
作者簡介
王德誌,華北科技學院:計算機基礎教研室主任,教授,碩士生導師。作者長期從事計算機基礎教育工作,主要講授Python語言編程與應用課程。目前,主持1項省級一流課程建設項目,完成1項省級教改項目,獲得省級教學成果三等獎1項。主要研究方向為智能物聯網,作為主要參與人完成1項國家重點研發項目。
目錄大綱
目錄
第1章Python語言概述/1
1.1Python語言發展簡介1
1.1.1Python語言歷史1
1.1.2Python語言特點1
1.1.3Python應用領域2
1.2集成開發環境3
1.2.1Python默認開發環境3
1.2.2PyCharm開發環境4
1.2.3Anaconda開發環境4
1.2.4VS Code4
1.3代碼編寫與執行方法6
1.3.1Python語言的書寫規則6
1.3.2命令交互執行方式6
1.3.3程序文件執行方式7
1.4Python案例講解9
1.4.1簡單的輸入輸出程序9
1.4.2turtle繪制蟒蛇程序9
實驗一Python環境與基本操作10
習題一10
第2章基本數據類型與運算/12
2.1數據類型概述12
2.2常量與變量12
2.2.1標識符的命名規則13
2.2.2變量13
2.2.3關鍵字14
2.3數值型數據操作15
2.3.1數值型數據15
2.3.2數值運算符15
2.3.3數值運算函數17
2.3.4數值類型轉換函數18
2.4字符串數據操作18
2.4.1字符串數據18
2.4.2字符串的基本操作19
2.4.3字符串的內置方法21
2.4.4操作字符串的內置函數23
2.4.5字符串格式化方法24
2.5標準輸入輸出函數26
2.5.1輸入函數input()26
2.5.2輸出函數print()28
2.6擴展: math庫的使用30
2.6.1math庫的引用30
2.6.2math庫的常用數學常數和函數31
實驗二基本數據類型的操作32
習題二32
第3章組合數據類型/35
3.1組合數據類型概述35
3.2列表36
3.2.1列表的定義與賦值36
3.2.2列表的基本操作39
3.2.3列表的內置方法39
3.2.4操作列表的內置函數41
3.2.5range()函數的使用42
3.3元組43
3.3.1元組的定義與賦值43
3.3.2元組的基本操作44
3.4字典44
3.4.1字典的定義與賦值44
3.4.2字典的基本操作45
3.5集合48
3.5.1集合的定義與賦值48
3.5.2集合的基本操作48
3.6列表與其他數據類型的轉換49
3.6.1列表與字符串間的轉換49
3.6.2列表與字典間的轉換50
3.7擴展: random庫51
實驗三組合數據類型的操作52
習題三53
第4章選擇程序/55
4.1程序設計結構概述55
4.1.1算法的概念55
4.1.2算法的表示56
4.2關系運算符與邏輯運算符61
4.2.1關系運算符61
4.2.2邏輯運算符62
4.2.3優先級63
4.3成員運算符與一致性運算符63
4.3.1成員運算符63
4.3.2一致性運算符64
4.4順序結構65
4.5選擇結構65
4.5.1單分支結構: if語句66
4.5.2雙分支結構: ifelse語句67
4.5.3三元運算符(條件表達式)68
4.5.4多分支結構: ifelifelse語句68
4.5.5if語句的嵌套結構70
4.6擴展: time庫和datetime庫的使用72
4.6.1calendar庫的使用72
4.6.2time和datetime庫的使用72
4.7綜合案例74
實驗四選擇結構使用80
習題四82
第5章循環語句結構/84
5.1循環語句結構概述84
5.2while循環語句的結構84
5.2.1while循環語句的基本結構84
5.2.2while循環語句的使用示例85
5.3forin循環語句的結構86
5.3.1forin循環語句的基本結構87
5.3.2forin循環語句的使用示例88
5.4嵌套循環語句91
5.5break與continue語句92
5.5.1break語句92
5.5.2continue語句94
5.5.3循環結構中的else子句95
5.6特殊循環——列表解析96
5.7異常捕捉98
5.7.1Python中的異常98
5.7.2捕捉異常100
5.7.3else和finally子句102
5.8擴展: turtle庫的使用102
5.8.1海龜繪圖概述102
5.8.2turtle庫常用方法103
5.8.3turtle庫繪圖示例104
5.9綜合案例105
實驗五循環結構使用113
習題五116
第6章函數/121
6.1函數的概念121
6.2常用Python標準庫122
6.3函數的定義、調用與返回值122
6.3.1函數的定義122
6.3.2函數的返回值123
6.3.3函數的調用123
6.4函數的參數傳遞128
6.4.1參數是否可變128
6.4.2不同類型的參數130
6.5變量的作用域133
6.5.1局部變量與全局變量的概念133
6.5.2使用關鍵字global語句聲明全局變量135
6.6函數的嵌套和遞歸135
6.6.1函數的嵌套調用135
6.6.2函數的遞歸調用136
6.7Python內置函數138
6.8lambda函數的定義與使用138
6.8.1lambda函數的定義138
6.8.2在lambda表達式中調用其他函數139
6.9擴展: jieba庫的使用139
6.9.1jieba庫概述140
6.9.2jieba庫解析140
6.9.3文本詞頻統計141
6.10綜合案例142
實驗六函數的使用146
習題六148
第7章文件/151
7.1文件概念151
7.1.1文本文件和二進制文件151
7.1.2文本文件的編碼151
7.1.3文件指針的概念152
7.2文件的打開與關閉152
7.2.1打開文件152
7.2.2關閉文件154
7.3文件的讀寫154
7.3.1讀取文件數據154
7.3.2往文件寫入數據156
7.3.3文件的定位讀寫157
7.3.4讀寫二進制文件158
7.4CSV文件操作159
7.4.1CSV文件的概念和特點159
7.4.2數據的維度159
7.4.3向CVS文件中讀寫一維和二維數據160
7.5擴展: openpyxl庫的文件使用162
實驗七文件166
第8章詞雲與PyInstaller庫應用/168
8.1WordCloud使用168
8.1.1WordCloud的安裝168
8.1.2WordCloud的使用169
8.2PyInstaller使用172
8.2.1PyInstaller安裝172
8.2.2使用PyInstaller打包172
8.2.3PyInstaller的參數173
8.3綜合案例: 基於共現提取人物關系可視化174
實驗八《紅樓夢》詞頻統計與詞雲展示182
第9章數據分析入門/183
9.1數據分析概述183
9.1.1數據分析的基本概念183
9.1.2數據分析的基本流程183
9.1.3數據分析第三方庫的安裝184
9.2Matplotlib數據可視化184
9.2.1繪制基本圖形184
9.2.2添加坐標軸和圖標識186
9.2.3繪制多窗口187
9.2.4配置常用圖形參數188
9.2.5添加箭頭註釋189
9.3Pyecharts數據可視化191
9.3.1Pyecharts概述191
9.3.2繪制圖形192
9.3.3設置圖表配置參數196
9.3.4組合圖與並行多圖199
9.4NumPy多維數組201
9.4.1數組生成及屬性201
9.4.2數組切片203
9.4.3運算符操作數組204
9.4.4數組修改操作205
9.4.5常用數學函數與統計函數207
9.4.6線性代數207
9.4.7綜合案例208
9.5Pandas數據處理210
9.5.1Pandas數據結構210
9.5.2讀取CSV/XLSX格式文件生成數據幀213
9.5.3數據切片讀取214
9.5.4行列數據的增刪改操作217
9.5.5修改行列索引220
9.5.6數據篩選222
9.5.7統計分析224
9.5.8綜合案例225
9.6綜合案例: 全國森林火災數據可視化227
實驗九設計學生成績分析系統231
第10章圖形用戶界面(GUI)編程開發/232
10.1GUI開發第三方庫介紹232
10.1.1GUI開發基本概念232
10.1.2常用第三方GUI庫232
10.1.3EasyGUI特點233
10.1.4PyQt5特點234
10.2EasyGUI使用234
10.2.1EasyGUI安裝與常用窗體函數234
10.2.2EasyGUI按鈕窗體235
10.2.3EasyGUI單選與多選項窗體236
10.2.4EasyGUI文本輸入窗體237
10.2.5EasyGUI文本顯示窗體239
10.2.6EasyGUI目錄與文件窗體239
10.3PyQt5開發環境安裝240
10.3.1安裝庫文件240
10.3.2配置外部工具命令240
10.4PyQt5創建主窗體243
10.4.1繪制主窗體243
10.4.2轉換窗體代碼245
10.4.3編寫窗體運行程序245
10.4.4修改窗體246
10.5PyQt5常用控件使用247
10.5.1標簽247
10.5.2文本框249
10.5.3信號/槽和按鈕250
10.5.4下拉列表框253
10.5.5彈出消息框255
10.5.6表格控件255
10.6PyQt5設計多窗體259
10.6.1嵌入式多窗體259
10.6.2彈出式多窗體261
10.6.3主窗體與子窗體交互數據262
10.7Matplotlib圖形在PyQt5中的使用265
10.7.1總體設計思路265
10.7.2靜態Matplotlib圖形展示266
10.7.3動態Matplotlib圖形展示268
10.8PyQt5程序打包發布269
10.8.1打包第三方工具的安裝269
10.8.2打包命令269
10.9綜合案例: 基於GUI的學生成績管理軟件269
實驗十設計學生成績分析系統273
第11章其他經典應用領域介紹/275
11.1Python熱門應用領域概述275
11.2數據庫操作應用276
11.2.1數據庫基礎知識276
11.2.2使用內置的SQLite3數據庫276
11.2.3操作MySQL和SQL Server數據庫278
11.3網絡爬蟲應用279
11.3.1網絡爬蟲第三方庫安裝279
11.3.2requests庫的使用279
11.3.3HTML格式說明281
11.3.4beautifulsoup4庫的使用282
11.3.5爬取豆瓣電影網Top250283
11.4Web網站開發應用284
11.4.1Flask開發環境配置284
11.4.2路由286
11.4.3利用上下文獲得數據288
11.4.4超鏈接地址跳轉289
11.4.5靜態網頁模板渲染290
11.5遊戲開發應用292
11.5.1Pygame庫介紹與安裝292
11.5.2Pygame遊戲框架293
11.5.3添加一個運動圖像294
11.5.4鍵盤控制和發射子彈295
11.5.5利用精靈產生敵方坦克297
11.5.6精靈碰撞——多子彈與坦克碰撞298
11.6人工智能應用303
11.6.1人工智能與Python關系介紹303
11.6.2生成式人工智能(AIGC)平臺API接口使用303
11.7嵌入式硬件開發應用308
11.7.1Python在嵌入式設備中應用308
11.7.2嵌入式設備虛擬仿真平臺Wokwi使用310
附錄/312
附錄APython集成開發環境安裝312
附錄B常用Python學習網站312
附錄CPython內置函數312
附錄D國家計算機二級等級考試(Python)考試知識點介紹(2025版)312
參考文獻/313