Python功能強大且簡單易學,是程序開發(fā)人員必學的語言之一。本書注重基礎、循序漸進,系統(tǒng)地講述了Python程序設計開發(fā)相關基礎知識。本書共分10章,涵蓋了Python語言基礎、Python基本語法、基本數(shù)據(jù)類型、組合數(shù)據(jù)類型、程序控制結構、函數(shù)與模塊、文件和數(shù)據(jù)組織、Python標準庫、第三方庫和面向對象等內容。本書內容全面覆蓋了《全國計算機等級考試二級Python語言程序設計考試大綱(2018年版)》的知識點。
1.零基礎入門
讀者即使沒有其他程序設計語言的相關基礎,跟隨本書也可輕松掌握Python的各種基本技術和使用方法。
2.學習成本低
本書在構建開發(fā)環(huán)境時,選擇了應用最為廣泛的Windows 操作系統(tǒng)、穩(wěn)定版Python3.5,使用Python 3.5 自帶的集成開發(fā)工具IDLE 等進行學習和操作,沒有特別的軟件和硬件要求。
3.內容編排精心設計
Python 程序設計涉及的范圍非常廣泛,本書內容編排并不求全、求深,而是考慮零基礎讀者的接受能力,選擇Python 中必備、實用的知識進行講解。知識和配套實例循序漸進、環(huán)環(huán)相扣。
4.強調理論與實踐相結合
書中每章末尾的編程實踐環(huán)節(jié)都盡量安排一個短小、完整的實例,方便教師教學,也方便學生學習。
5.完整收集學習必備資源
為了方便讀者學習,本書提供所有實例的源代碼、數(shù)據(jù)庫文件以及資源。源代碼可在學習過程中直接使用,參考相關章節(jié)進行配置即可。
夏幫貴,1998年畢業(yè)于西南大學,主要從事數(shù)據(jù)庫、軟件開發(fā),已出版VB、C/C++、VF、Java、PHP、ASP.NET等相關教材十余部。
第 1章
Python語言基礎 1
1.1 Python概述 1
1.1.1 Python的發(fā)展 1
1.1.2 Python的特點 1
1.1.3 Python的版本 3
1.1.4 Python 3與Python 2的區(qū)別 3
1.2 運行Python程序 6
1.2.1 Python程序的運行方式 6
1.2.2 Python程序的可執(zhí)行文件 7
1.3 Python開發(fā)環(huán)境 7
1.3.1 Python的下載和安裝 7
1.3.2 Python編程工具:IDLE 10
1.4 綜合實例 11
小結 13
習題 13
第 2章
Python基本語法 15
2.1 基本語法元素 15
2.1.1 縮進 15
2.1.2 注釋 16
2.1.3 語句續(xù)行符號 16
2.1.4 語句分隔符號 17
2.1.5 保留字和關鍵字 17
2.2 基本輸入和輸出 18
2.2.1 基本輸入 18
2.2.2 基本輸出 19
2.3 變量與對象 20
2.3.1 變量命名規(guī)則 20
2.3.2 賦值語句 20
2.3.3 變量與對象 23
2.3.4 對象的垃圾回收 23
2.3.5 變量的共享引用 24
2.4 綜合實例 25
小結 26
習題 26
第3章
基本數(shù)據(jù)類型 28
3.1 數(shù)字類型 28
3.1.1 整數(shù)類型 28
3.1.2 浮點數(shù)類型 29
3.1.3 復數(shù)類型 29
3.1.4 小數(shù)類型 29
3.1.5 分數(shù)類型 30
3.2 數(shù)字運算 31
3.2.1 數(shù)字運算操作符 31
3.2.2 數(shù)字處理函數(shù) 35
3.3 字符串類型 36
3.3.1 字符串常量 36
3.3.2 字符串操作符 39
3.3.3 字符串的索引 40
3.3.4 字符串的切片 40
3.3.5 迭代字符串 41
3.3.6 字符串處理函數(shù) 41
3.3.7 字符串處理方法 42
3.3.8 字符串的格式化 48
3.3.9 bytes字符串 51
3.4 數(shù)據(jù)類型操作 51
3.4.1 類型判斷 51
3.4.2 類型轉換 51
3.5 綜合實例 53
小結 54
習題 54
第4章
組合數(shù)據(jù)類型 56
4.1 集合 56
4.1.1 集合常量 56
4.1.2 集合運算 57
4.1.3 集合基本操作 58
4.1.4 凍結集合 59
4.2 列表 59
4.2.1 列表基本特點和操作 59
4.2.2 常用列表方法 62
4.3 元組 65
4.3.1 元組的特點和操作 65
4.3.2 元組的方法 67
4.4 字典 67
4.4.1 字典的特點和操作 68
4.4.2 字典常用方法 70
4.4.3 字典視圖 72
4.5 迭代和列表解析 74
4.5.1 迭代 74
4.5.2 列表解析 76
4.5.3 zip()、map()和filter() 78
4.6 綜合實例 80
小結 81
習題 81
第5章
程序控制結構 83
5.1 程序的基本結構 83
5.2 分支結構 84
5.2.1 單分支結構 84
5.2.2 雙分支結構 84
5.2.3 多分支結構 85
5.2.4 if...else三元表達式 86
5.3 循環(huán)結構 87
5.3.1 遍歷循環(huán):for 87
5.3.2 無限循環(huán):while 89
5.3.3 循環(huán)控制:break和continue 91
5.4 異常處理 92
5.4.1 異常處理基本結構 92
5.4.2 捕捉多個異!94
5.4.3 except...as 95
5.4.4 捕捉所有異!96
5.4.5 異常處理結構的嵌套 97
5.4.6 try...finally終止行為 97
5.4.7 raise語句 97
5.4.8 異常鏈:異常引發(fā)異常 98
5.4.9 assert語句 99
5.5 綜合實例 99
小結 100
習題 100
第6章
函數(shù)與模塊 103
6.1 函數(shù) 103
6.1.1 定義函數(shù) 103
6.1.2 調用函數(shù) 104
6.1.3 函數(shù)的參數(shù) 104
6.1.4 函數(shù)嵌套定義 107
6.1.5 lambda函數(shù) 107
6.1.6 遞歸函數(shù) 108
6.1.7 函數(shù)列表 108
6.2 變量的作用域 109
6.2.1 作用域分類 109
6.2.2 global語句 111
6.2.3 nonlocal語句 111
6.3 模塊 112
6.3.1 導入模塊 113
6.3.2 導入時執(zhí)行模塊 114
6.3.3 用import語句還是from語句 116
6.3.4 重新載入模塊 117
6.3.5 模塊搜索路徑 118
6.3.6 嵌套導入模塊 120
6.3.7 查看模塊對象屬性 121
6.3.8 __name__屬性和命令行參數(shù) 121
6.3.9 隱藏模塊變量 122
6.4 模塊包 124
6.4.1 包的基本結構 124
6.4.2 導入包 124
6.4.3 相對導入 125
6.4.4 在__init__.py中添加代碼 126
6.5 綜合實例 127
本章小結 129
習題 129
第7章
文件和數(shù)據(jù)組織 132
7.1 文件 132
7.1.1 文件類型 132
7.1.2 打開和關閉文件 133
7.1.3 讀寫文本文件 134
7.1.4 讀寫二進制文件 138
7.1.5 用文件存儲對象 139
7.1.6 目錄操作 139
7.2 讀寫CSV文件 141
7.2.1 CSV文件的基本概念 141
7.2.2 讀CSV文件數(shù)據(jù) 141
7.2.3 將數(shù)據(jù)寫入CSV文件 143
7.3 數(shù)據(jù)組織的維度 144
7.3.1 基本概念 144
7.3.2 一維數(shù)據(jù)的處理 145
7.3.3 二維數(shù)據(jù)的處理 146
7.3.4 數(shù)據(jù)排序 147
7.3.5 數(shù)據(jù)查找 150
7.4 綜合實例 151
小結 153
習題 153
第8章
Python標準庫 155
8.1 繪圖工具:turtle庫 155
8.1.1 turtle庫的基本概念 155
8.1.2 窗體函數(shù) 157
8.1.3 畫筆控制函數(shù) 159
8.1.4 畫筆運動函數(shù) 161
8.1.5 形狀函數(shù) 164
8.1.6 輸入輸出函數(shù) 166
8.1.7 事件處理函數(shù) 167
8.1.8 turtle繪圖實例 168
8.2 隨機數(shù)工具:random庫 171
8.2.1 random庫概述 171
8.2.2 隨機數(shù)種子函數(shù) 171
8.2.3 整數(shù)隨機數(shù)函數(shù) 172
8.2.4 浮點數(shù)隨機數(shù)函數(shù) 173
8.2.5 序列隨機函數(shù) 173
8.2.6 隨機數(shù)實例 174
8.3 時間處理工具:time庫 175
8.3.1 time庫概述 175
8.3.2 時間處理函數(shù) 176
8.3.3 時間格式化函數(shù) 177
8.3.4 計時函數(shù) 179
8.3.5 時間函數(shù)實例 179
8.4 圖形用戶界面工具:Tkinter庫 180
8.4.1 Tkinter庫基礎 180
8.4.2 Tkinter窗口 181
8.4.3 窗口布局 182
8.4.4 事件處理 185
8.4.5 控件簡介 187
8.4.6 對話框 191
8.5 綜合實例 194
小結 196
習題 196
第9章
第三方庫 199
9.1 第三方庫安裝方法 199
9.1.1 使用pip安裝第三方庫 199
9.1.2 使用第三方庫安裝程序 201
9.2 第三方庫簡介 202
9.2.1 文本處理庫簡介 202
9.2.2 數(shù)據(jù)分析庫簡介 202
9.2.3 數(shù)據(jù)可視化庫簡介 203
9.2.4 網絡爬蟲庫簡介 204
9.2.5 用戶圖形界面庫簡介 204
9.2.6 機器學習庫簡介 205
9.2.7 Web 開發(fā)庫簡介 206
9.2.8 游戲開發(fā)庫簡介 206
9.3 打包工具:PyInstaller 207
9.3.1 PyInstaller庫概述 207
9.3.2 安裝PyInstaller 208
9.3.3 使用PyInstaller 208
9.4 分詞工具:jieba 210
9.4.1 jieba庫概述 211
9.4.2 使用分詞功能 211
9.4.3 使用詞典 212
9.4.4 詞性標注 213
9.4.5 返回詞語位置 214
9.4.6 關鍵詞提取 214
9.5 詞云工具:wordcloud 216
9.5.1 wordcloud庫概述 216
9.5.2 wordcloud庫函數(shù) 216
9.5.3 生成詞云 217
9.6 綜合實例 219
小結 220
習題 220
第 10章
面向對象 222
10.1 理解Python的面向對象 222
10.1.1 面向對象的基本概念 222
10.1.2 Python的類和類型 223
10.1.3 Python中的對象 223
10.2 定義和使用類 224
10.2.1 定義類 224
10.2.2 使用類 225
10.3 對象的屬性和方法 225
10.3.1 對象的屬性 225
10.3.2 對象的方法 227
10.3.3 特殊屬性和方法 228
10.3.4 “偽私有”屬性和方法 229
10.3.5 對象的初始化 230
10.3.6 靜態(tài)方法 230
10.4 類的繼承 231
10.4.1 簡單繼承 231
10.4.2 在子類中定義屬性和方法 231
10.4.3 調用超類的初始化函數(shù) 232
10.4.4 多重繼承 233
10.5 模塊中的類 234
10.6 綜合實例 234
小結 236
習題 236
附錄1
將Python添加到系統(tǒng)的環(huán)境變量PATH 238
附錄2
ASCII碼對照表 240
附錄3
常用顏色對照表 241
附錄4
全國計算機等級考試二級Python語言程序設計考試大綱(2018年版) 243