Python程序設計

曹仰傑、段鵬松、陳永霞、楊聰

  • 出版商: 清華大學
  • 出版日期: 2019-12-01
  • 定價: $414
  • 售價: 7.5$311
  • 語言: 簡體中文
  • ISBN: 7302539251
  • ISBN-13: 9787302539254
  • 相關分類: Python
  • 立即出貨 (庫存 < 4)

  • Python程序設計-preview-1
  • Python程序設計-preview-2
  • Python程序設計-preview-3
Python程序設計-preview-1

買這商品的人也買了...

商品描述

《Python程序設計》全面講述Python的基本知識和開發技術。全書分三部分,共15章。第一部分基礎篇,介紹Python的起源和發展、開發工具、語法基礎、控制結構、復合數據結構、字符串與正則表達式、函數、類與對象、文件操作、錯誤與異常等內容;第二部分進階篇,深入講解Python的虛擬環境Anaconda、科學計算庫NumPy、數據分析庫Pandas、繪圖工具matplotlib和數據分析工具SciPy;第三部分實踐篇,主要介紹Python在機器學習領域的應用。 《Python程序設計》內容豐富、難度適中、結構清晰、內容翔實,通過三部分以層次遞進方式進行講解,以引導讀者循序漸進地學習、掌握並運用Python。《Python程序設計》可作為普通高等院校電腦、人工智能、大數據科學、物聯網等專業Python相關課程的教材,也可作為Python愛好者的入門級教程。 《Python程序設計》配套的電子課件、實例源文件、習題答案可以到http://www.tupwk.com.cn/downpage網站下載,也可以掃描前言中的二維碼下載。

目錄大綱

第一部分基礎篇


第1章認識Python 3
1.1初識Python 3
1.1.1編程語言概述3
1.1.2 Python常用解釋器5
1.1.3 Python語言特點5
1.2 Python的安裝6
1.2.1 Windows環境中Python的安裝6
1.2.2 Linux環境中Python的安裝9
1.2.3 Mac OS環境中Python的安裝11
1.3 Python代碼的執行13
1.3.1在交互模式下執行Python代碼13
1.3.2在腳本模式下執行Python代碼15
1.4 Python集成開發環境15
1.4.1 PyCharm的安裝16
1.4.2 PyCharm的使用18
1.4.3 PyCharm的插件20
1.5 Python 2.x與Python 3.x的區別22
1.6本章小結23


第2章Python語法基礎24
2.1數據類型24
2.1.1整數類型25
2.1.2浮點型(float) 27
2.1.3複數(complex) 27
2.1.4布爾型(Bool) 28
2.1.5數值運算29
2.1.6數值計算函數庫31
2.1.7 type函數的應用32
2.2標識符32
2.2.1標識符的含義33
2.2.2標識符的命名33
2.2.3 Python關鍵字33
2.2.4 Python的BIF 34
2.2.5專有標識符34
2.3變量的作用域35
2.3.1 Python作用域類型35
2.3.2賦值操作符41
2.3.3增量賦值41
2.3.4多元賦值42
2.4語法規則42
2.4.1註釋42
2.4.2代碼組與代碼塊43
2.4.3同行書寫多條語句43
2.4.4空行與縮進44
2.5 I/O操作44
2.5 .1輸出操作44
2.5.2輸入操作46
2.6 Python模塊47
2.6.1模塊的分類47
2.6.2使用pip管理Python擴展庫47
2.6.3模塊的導入和使用48
2.6.4模塊的導入順序48
2.7 Python對象48
2.8本章小結50


第3章流程控制語句51
3.1條件語句51
3.1.1條件表達式51
3.1.2單分支選擇結構53
3.1.3雙分支選擇結構53
3.1.4多分支選擇結構54
3.1.5選擇結構的嵌套55
3.1.6三元表達式56
3.2循環語句57
3.2.1 while循環57
3.2.2 while…else循環59
3.2.3 for循環60
3.2.3 for…else循環63
3.3循環控制語句64
3.3.1 break語句64
3.3.2 continue語句65
3.3.3 pass語句65
3.4迭代器66
3.4.1可迭代對象66
3.4.2迭代器的定義66
3.4.3創建迭代器67
3.5生成器68
3.5.1生成器的定義69
3.5.2生成器的創建69
3.6與條件循環相關的內置函數72
3.6.1 range函數73
3.6.2 enumerate函數73
3.6.3 reversed函數74
3.6.4 zip函數75
3.6.5 *zip函數76
3.6. 6 sorted函數76
3.7本章小結76


第4章複合數據類型77
4.1列表77
4.1.1列表的創建77
4.1.2基本操作78
4.1.3多維列表80
4.1.4迭代器81
4.1.5列表解析82
4.1 .6列表函數和方法82
4.2元組83
4.2.1元組的創建83
4.2.2基本操作84
4.2.3元組函數和方法86
4.2.4元組的優勢87
4.3字典88
4.3.1字典的創建88
4.3.2基本操作88
4.3.3字典的嵌套90
4.3.4字典的遍歷90
4.3.5字典函數和方法90
4.4集合91
4.4.1集合的創建91
4.4.2集合的數學運算92
4.4.3基本操作93
4.4.4不可變集合94
4.4.5集合函數和方法95
4.5類型轉換和格式化輸出96
4.5.1類型轉換96
4.5.2格式化輸出97
4.6本章小結99


第5章字符串和正則表達式100
5.1字符串表示100
5.1.1單/雙引號100
5.1.2三重引號101
5.1.3轉義字符102
5.1.4 raw字符串103
5.2字符串操作104
5.2.1索引和分片104
5.2.2連接字符串105
5.2.3修改字符串106
5.2.4其他操作107
5.3字符串格式化108
5.3.1符號格式化109
5.3.2函數格式化110
5.3.3字典格式化111
5.4正則表達式112
5.4.1概述112
5.4.2語法規則112
5.4.3 re模塊114
5.5本章小結120


第6章函數和函數式編程121
6.1函數定義121
6.1.1函數概述121
6.1.2函數定義122
6.1.3形參和實參124
6.1.4函數的返回值125
6.2函數分類126
6.2.1內建函數126
6.2.2自定義函數128
6.3函數參數129
6.3.1參數種類129
6.3.2位置參數130
6.3.3默認參數132
6.3.4不定長參數135
6.3.5關鍵字參數136
6.3.6命名關鍵字參數138
6.3.7參數組合139
6.4函數式編程140
6.4.1高階函數140
6.4.2匿名函數141
6.5本章小結141


第7章Python面向對象編程142
7.1面向對象編程概述142
7.1.1 OOP的產生142
7.1.2 OOP核心思想143
7.1.3 OOP特徵144
7.2類和對象144
7.2.1類的創建144
7.2.2對象的創建146
7.2.3類的屬性146
7.2.4類的方法149
7.2.5內部類151
7.2.6魔術方法151
7.3類間關係155
7.3.1依賴關係155
7.3.2關聯關係156
7.3.3繼承關係157
7.4本章小結159


第8章文件操作160
8.1文件對象160
8.1.1打開文件160
8.1.2關閉文件162
8.1.3文件對象的屬性163
8.1.4文件對象的方法163
8.2文件系統訪問167
8.2.1 os模塊168
8.2.2文件路徑操作170
8.3文件數據處理171
8.3.1按字節處理數據171
8.3.2使用文件迭代器172
8.3.3結構化數據存儲172
8.3.4序列化存儲173
8.4綜合案例174
8.5本章小結176


第9章錯誤與異常177
9.1基本概念177
9.1.1什麼是錯誤177
9.1.2什麼是異常178
9.2 Python中的異常179
9.2.1內置異常180
9.2.2用戶自定義異常183
9.3 Python中異常的檢測與處理183
9.3.1 try-except 184
9.3.2 try-except-else 186
9.3.3 try-finally 187
9.3.4 try-except-else-finally 188
9.3.5強制觸發異常raise 190
9.3.6斷言機制assert 191
9.3.7預定義的清理行為with 192
9.4本章小結192


第二部分進階篇


第10章Python虛擬環境195
10.1初識Anaconda 195
10.2安裝Anaconda 196
10.2.1 Windows環境下的Anaconda安裝196
10.2.2 macOS環境下的Anaconda安裝198
10.2.3 Linux環境下的Anaconda安裝202
10.3 conda管理工具204
10.3.1包管理204
10.3.2環境管理207
10.4本章小結209


第11章科學計算庫NumPy 210
11.1初識NumPy 210
11.1.1 NumPy的特點210
11.1.2安裝NumPy 211
11.1.3 NumPy簡單實例212
11.2 NumPy數組基礎213
11.2.1數據類型213
11.2.2創建數組215
11.2.3數組屬性217
11.2.4數組操作218
11.3 NumPy矩陣基礎223
11.3.1 NumPy多維數組223
11.3.2 NumPy矩陣對象225
11.4 NumPy方法進階226
11.4.1常用文件方法226
11.4.2常用數學方法227
11.4.3常用統計方法228
11.5 NumPy綜合實例231
11.5.1預處理數據232
11.5.2根據日期分析股票漲幅233
11.6本章小結234


第12章數據分析庫Pandas 235
12.1初識Pandas 235
12.1.1安裝Pandas 236
12.1.2 Pandas簡單實例237
12.2序列Series 238
12.2.1創建Series對象238
12.2.2 Series數據操作240
12.2.3 Series數據分析242
12.3數據幀DataFrame 247
12.3.1創建DataFrame對象247
12.3.2 DataFrame數據操作248
12.3.3 DataFrame數據分析251
12.4綜合實例257
12.4.1數據集概況257
12.4.2數據集分析259
12.4.3數據預處理261
12.5本章小結264


第13章可視化工具庫matplotlib 265
13.1初識matplotlib 265
13.1.1安裝matplotlib 266
13.1.2 matplotlib簡單圖形繪製267
13.2常用2D圖形268
13.2.1繪製散點圖268
13.2.2繪製線性圖270
13.2.3繪製柱狀圖273
13.2.4繪製直方圖274
13.2. 5繪製餅狀圖276
13.3常用3D圖形278
13.3.1繪製3D散點圖278
13.3.2繪製3D曲線279
13.3.3繪製3D曲面280
13.3.4繪製3D柱狀圖281
13.4圖形設置282
13.4.1設置顏色282
13.4.2添加註釋和標題284
13.4.3設置圖例和標籤285
13.5文件操作286
13.5.1從CSV文件中加載數據286
13.5.2從文本文件中加載數據287
13.5.3從Excel文件中加載數據288
13.6圖像操作290
13.6.1圖像的讀取與顯示290
13.6.2圖像的保存與轉換292
13.7綜合實例293
13.7.1繪製子圖293
13.7.2鳶尾花可視化屬性分析296
13.8本章小結297


第14章高級科學計算庫SciPy 298
14.1初識SciPy 298
14.1.1 SciPy的特點298
14.1.2安裝SciPy 299
14.1.3 SciPy簡單實例300
14.1.4 SciPy使用基礎300
14.2數值積分模塊(integrate) 301
14.2.1常用積分方法301
14.2.2求解常微分方程306
14.3插值模塊(interpolate) 307
14.3.1一維插值方法308
14.3.2多維插值方法309
14.4概率統計模塊(stats) 310
14.4.1連續型隨機變量311
14.4.2離散型隨機變量312
14.4.3常用統計方法313
14.5優化模塊(optimize) 314
14.5. 1 leastsq擬合方法315
14.5.2函數最小值方法316
14.5.3 fsolve方法319
14.6其他常用模塊320
14.6.1線性代數模塊(linalg) 321
14.6.2文件模塊(io) 321
14.6.3圖像處理模塊(ndimage) 322
14.6.4特殊方法模塊(special) 326
14.7綜合實例327
14.8本章小結331


第三部分實踐篇


第15章Python機器學習335
15.1初識機器學習335
15.1.1什麼是機器學習335
15.1.2機器學習模型分類336
15.1.3 Python與機器學習338
15.2機器學習開發流程339
15.2.1數據採集339
15.2.2數據清洗339
15.2.3數據標註340
15.2.4模型選擇340
15.2.5模型評估和優化341
15.3初識scikit-learn 342
15.3.1 scikit- learn簡介342
15.3.2安裝scikit-learn 343
15.3.3 scikit-learn常用模塊344
15.4常用的機器學習算法346
15.4.1 K近鄰算法346
15.4.2線性回歸算法350
15.4.3決策樹算法353
15.4.4支持向量機算法356
15.4.5樸素貝葉斯算法359
15.4.6幾種機器學習算法的比較361
15.5機器學習實例361
15.5.1數據準備361
15.5.2選擇和訓練模型362
15.5.3使用模型364
15.5.4評估模型365
15.6機器學習綜合實踐366
15.6.1文本分類實例366
15.6.2回歸項目實例370
15.7本章小結375