Python是近年來流行的編程語言之一,簡潔的語法和卓越的可讀性使其成為初學者的完美編程語言,并且深受編程人員的喜愛和追捧。本書以Python 3.9為開發(fā)環(huán)境,從入門者的角度出發(fā),以簡潔、通俗易懂的語言逐步展開Python語言教學。全書共分為12章,主要內(nèi)容包括Python環(huán)境搭建、數(shù)字類型與字符串、流程控制、列表與元組、集合和字典、函數(shù)、類與對象、模塊、文件與文件路徑操作、錯誤和異常、正則表達式以及圖形用戶界面編程。本書配有大量典型的實例,讀者可以邊學邊練,鞏固所學知識,并在實踐中提升實際開發(fā)能力。本書提供完善的學習資源和支持服務,包括電子教案(PPT)、案例素材、源代碼、各章上機練習與課后作業(yè)參考答案、教學設計、教學大綱等配套資源,為開發(fā)者帶來全方位的學習體驗。本書適合作為高等院校計算機相關專業(yè)及其他工科專業(yè)的Python程序設計課程教材,也可作為Python培訓教材,還可作為編程人員及自學者的輔助教材或自學參考書。
石毅,擁有多年軟件開發(fā)從業(yè)與教育培訓經(jīng)驗,熟悉Java開發(fā)企業(yè)級應用、Android應用開發(fā)、Web前端設計,負責Java軟件開發(fā)方向課程教學工作,主講Java、HTML、CSS、JavaScript、jQuery、MySQL、SQL Server、Oracle 數(shù)據(jù)庫、JavaWEB開發(fā)、SSM框架、SSH框架、微服務開發(fā)等課程。常受邀到各大高校擔任軟件開發(fā)相關課程教學,教學風格幽默風趣、工作態(tài)度認真負責、深受廣大學生喜歡。
第1章 初識Python 1
1.1 Python語言概述 2
1.1.1 Python語言的發(fā)展歷史 2
1.1.2 Python語言的特點 2
1.1.3 Python的版本 4
1.1.4 Python語言的應用領域 6
1.2 搭建Python開發(fā)環(huán)境 7
1.2.1 Python的安裝 7
1.2.2 IDLE的使用 11
1.2.3 集成開發(fā)環(huán)境PyCharm的安裝與使用 12
1.3 快速開發(fā)Python程序 19
1.3.1 開發(fā)個Python程序:模擬游戲幣充值 19
1.3.2 變量和常量 19
1.3.3 基本輸入/輸出 22
1.3.4 良好的編程約定 23
1.3.5 技能訓練 24
1.4 Python程序執(zhí)行原理 25
1.4.1 運行hello_world.py時發(fā)生的情況 25
1.4.2 Python的文件類型 25
1.4.3 Python是一種解釋型語言 26
1.4.4 技能訓練 26
第2章 Python基礎語法 29
2.1 數(shù)字類型 29
2.1.1 數(shù)字類型的表示方法 29
2.1.2 技能訓練1 31
2.1.3 類型轉(zhuǎn)換函數(shù) 31
2.1.4 技能訓練2 34
2.2 字符串 34
2.2.1 字符串的定義 34
2.2.2 字符串的格式化輸出 36
2.2.3 字符串的常見操作 39
2.2.4 字符串的索引與切片 44
2.2.5 技能訓練 46
2.3 運算符 47
2.3.1 算術運算符 47
2.3.2 比較運算符 48
2.3.3 賦值運算符 49
2.3.4 邏輯運算符 50
2.3.5 位運算符 51
2.3.6 運算符優(yōu)先級 52
2.3.7 技能訓練 53
第3章 流程控制 56
3.1 結構化程序設計 56
3.2 條件語句 57
3.2.1 一個簡單示例 57
3.2.2 條件測試 58
3.2.3 if 語句 61
3.2.4 if...else語句 62
3.2.5 if...elif...else語句 64
3.2.6 技能訓練 66
3.3 條件語句嵌套 67
3.3.1 if語句嵌套 67
3.3.2 技能訓練 68
3.4 循環(huán)語句 69
3.4.1 for循環(huán) 69
3.4.2 技能訓練1 70
3.4.3 while循環(huán) 71
3.4.4 技能訓練2 75
3.5 循環(huán)語句嵌套 76
3.5.1 while循環(huán)嵌套 76
3.5.2 for循環(huán)嵌套 77
3.5.3 技能訓練 78
3.6 Python的其他語句 78
3.6.1 break語句 78
3.6.2 continue語句 80
3.6.3 pass語句 81
3.6.4 else語句 81
3.6.5 技能訓練 82
第4章 列表和元組 84
4.1 認識列表 84
4.1.1 什么是列表 84
4.1.2 列表的創(chuàng)建方式 85
4.1.3 訪問列表元素 85
4.1.4 列表的常用方法 87
4.1.5 技能訓練 87
4.2 列表的遍歷、排序和查找 88
4.2.1 列表的遍歷 88
4.2.2 列表的排序 89
4.2.3 列表的查找 90
4.2.4 技能訓練 91
4.3 添加、刪除和修改列表元素 92
4.3.1 在列表中添加元素 92
4.3.2 修改列表元素 93
4.3.3 刪除列表元素 94
4.3.4 技能訓練 95
4.4 嵌套列表 95
4.4.1 嵌套列表的創(chuàng)建與訪問 96
4.4.2 技能訓練 97
4.5 認識元組 97
4.5.1 元組的創(chuàng)建方式 97
4.5.2 訪問元組元素 98
4.5.3 元組的遍歷 99
4.5.4 修改元組變量 100
4.5.5 技能訓練 101
第5章 字典與集合 104
5.1 認識字典 104
5.1.1 一個簡單的字典 104
5.1.2 字典的創(chuàng)建方式 105
5.1.3 通過鍵訪問字典 107
5.1.4 技能訓練 107
5.2 字典的基本操作 108
5.2.1 字典元素的添加和修改 108
5.2.2 字典元素的刪除 109
5.2.3 字典元素的查詢 110
5.2.4 技能訓練 112
5.3 嵌套字典 113
5.3.1 字典列表 113
5.3.2 在字典中存儲列表 115
5.3.3 在字典中存儲字典 116
5.3.4 技能訓練 117
5.4 認識集合 117
5.4.1 集合的創(chuàng)建方式 117
5.4.2 集合元素的添加、刪除和清空 118
5.4.3 集合類型的操作符 119
5.4.4 技能訓練 121
5.5 列表、元組、字典和集合的比較 121
第6章 函數(shù) 124
6.1 定義函數(shù) 124
6.1.1 向函數(shù)傳遞信息 125
6.1.2 實參和形參 126
6.1.3 技能訓練 126
6.2 函數(shù)的參數(shù)傳遞 126
6.2.1 位置實參 126
6.2.2 關鍵字實參 128
6.2.3 默認值 129
6.2.4 等效的函數(shù)調(diào)用 130
6.2.5 不定長參數(shù) 131
6.2.6 避免實參錯誤 131
6.2.7 技能訓練 132
6.3 變量作用域 132
6.3.1 局部變量 132
6.3.2 全局變量 133
6.3.3 技能訓練 134
6.4 返回值 135
6.4.1 返回簡單值 135
6.4.2 讓實參變成可選的 135
6.4.3 返回字典 136
6.4.4 結合使用函數(shù)和while循環(huán) 137
6.4.5 技能訓練 138
6.5 傳遞列表 138
6.5.1 在函數(shù)中修改列表 139
6.5.2 禁止函數(shù)修改列表 140
6.5.3 技能訓練 141
6.6 函數(shù)的特殊形式 141
6.6.1 匿名函數(shù) 141
6.6.2 遞歸函數(shù) 142
6.6.3 技能訓練 143
6.7 Python常用內(nèi)置函數(shù) 143
第7章 類與面向?qū)ο?147
7.1 面向?qū)ο?147
7.1.1 面向?qū)ο蟾攀?147
7.1.2 面向?qū)ο蟮幕靖拍?148
7.2 類與對象 149
7.2.1 類與對象的關系 149
7.2.2 類的定義與訪問 150
7.2.3 對象的創(chuàng)建與使用 150
7.2.4 訪問限制 151
7.2.5 技能訓練 152
7.3 類中特殊方法 152
7.3.1 構造方法 152
7.3.2 析構方法 153
7.3.3 類方法 154
7.3.4 靜態(tài)方法 155
7.3.5 技能訓練 156
7.4 使用類和實例 157
7.4.1 Car類 157
7.4.2 給屬性指定默認值 157
7.4.3 修改屬性的值 158
7.4.4 技能訓練 161
7.5 繼承 161
7.5.1 單繼承與多繼承 161
7.5.2 super()函數(shù) 162
7.5.3 子類的方法__init__() 162
7.5.4 給子類定義屬性和方法 163
7.5.5 重寫父類的方法 163
7.5.6 將實例用作屬性 164
7.5.7 技能訓練 165
7.6 多態(tài) 166
7.6.1 多態(tài)應用 166
7.6.2 技能訓練 167
第8章 模塊和包 170
8.1 Python程序的結構 170
8.2 模塊概述 171
8.2.1 模塊的概念 171
8.2.2 模塊的導入方式 171
8.2.3 常見的標準模塊 172
8.2.4 技能訓練 176
8.3 自定義模塊 176
8.4 導入類應用 177
8.4.1 導入單個類 178
8.4.2 在一個模塊中存儲多個類 179
8.4.3 從一個模塊中導入多個類 180
8.4.4 導入整個模塊 180
8.4.5 導入模塊中的所有類 180
8.4.6 在一個模塊中導入另一個模塊 181
8.4.7 自定義工作流程 181
8.4.8 技能訓練 182
8.5 Python標準庫 182
8.5.1 Python標準庫使用 182
8.5.2 技能訓練 183
8.6 模塊的導入特性 183
8.6.1 __all__屬性 183
8.6.2 __name__屬性 184
8.7 Python中的包 184
8.7.1 包的結構 184
8.7.2 包的導入 185
8.8 第三方模塊的下載與安裝 185
8.8.1 在命令提示符中下載和安裝第三方模塊 185
8.8.2 在PyCharm中下載和安裝第三方模塊 186
8.8.3 技能訓練 186
第9章 文件I/O 189
9.1 文件的打開和關閉 189
9.1.1 打開文件 190
9.1.2 關閉文件 190
9.2 從文件中讀取數(shù)據(jù) 191
9.2.1 文件的常用讀取方法 191
9.2.2 讀取整個文件 192
9.2.3 文件路徑 193
9.2.4 逐行讀取 194
9.2.5 創(chuàng)建一個包含文件各行內(nèi)容的列表 195
9.2.6 使用文件的內(nèi)容 195
9.2.7 包含一百萬位的大型文件 196
9.2.8 技能訓練 196
9.3 向文件寫入數(shù)據(jù) 197
9.3.1 數(shù)據(jù)寫入常用方法 197
9.3.2 寫入空文件 198
9.3.3 寫入多行 198
9.3.4 附加到文件 199
9.3.5 技能訓練 199
9.4 文件的定位讀取 199
9.4.1 tell()方法 199
9.4.2 seek()方法 200
9.5 文件的復制與重命名 200
9.5.1 文件的復制 200
9.5.2 文件的重命名 201
9.6 目錄操作 201
9.6.1 創(chuàng)建目錄 201
9.6.2 刪除目錄 202
9.6.3 獲取目錄的文件列表 202
9.7 文件路徑操作 203
9.7.1 相對路徑與路徑 203
9.7.2 獲取當前路徑 203
9.7.3 檢測路徑的有效性 204
9.7.4 路徑的拼接 204
9.7.5 技能訓練 205
第10章 異常處理 207
10.1 錯誤和異常概述 207
10.2 捕獲異常 209
10.2.1 try...except語句 209
10.2.2 為什么需要異常信息 210
10.2.3 捕獲異常信息 211
10.2.4 else子句 213
10.2.5 finally子句 214
10.2.6 技能訓練 214
10.3 拋出異常 215
10.3.1 raise語句 215
10.3.2 異常的傳遞 216
10.3.3 assert斷言語句 217
10.4 自定義異常 217
10.4.1 定義自定義異常類 217
10.4.2 技能訓練 218
10.5 with語句與上下文管理器 219
10.5.1 with語句 219
10.5.2 上下文管理器 219
10.5.3 自定義上下文管理器 220
10.5.4 技能訓練 220
第11章 正則表達式 223
11.1 正則表達式基礎知識 223
11.1.1 為什么需要正則表達式 223
11.1.2 什么是正則表達式 223
11.1.3 元字符 224
11.1.4 預定義字符集 227
11.2 使用re模塊處理正則表達式 227
11.2.1 re模塊 227
11.2.2 預編譯 228
11.3 匹配與搜索 229
11.3.1 match()函數(shù)和search()函數(shù) 229
11.3.2 技能訓練1 230
11.3.3 匹配對象 230
11.3.4 全文匹配 232
11.3.5 檢索替換 233
11.3.6 技能訓練2 233
11.3.7 文本分割 234
11.3.8 貪婪匹配和非貪婪匹配 234
11.3.9 技能訓練3 235
第12章 圖形用戶界面編程 238
12.1 tkinter概述 238
12.1.1 認識tkinter 238
12.1.2 構建簡單的GUI 240
12.2 tkinter組件概述 244