本書介紹了使用Python語言進行程序設計的方法及其應用。全書共14章,分為三部分。第一部分為基礎篇(第1~5章),主要介紹Python的基礎語法,包括Python語言的概述,Python的基本數據類型、變量、運算符、表達式等概念,三種程序的基本控制結構,函數,列表、元組、集合與字典四種簡單數據結構。第二部分為進階篇(第6~10章),主要介紹Python的一些高級特性和功能,包括模塊和包的使用,字符串的處理,Python的面向對象編程,異常處理和文件處理。第三部分為應用篇(第11~14章),主要介紹Python在某些領域的應用方法,包括GUI程序開發(fā)、數據管理和數據庫管理、Web開發(fā)及多任務編程。本書既可以作為高等院校計算機與軟件相關專業(yè)的教材,也可以作為軟件從業(yè)人員的學習指導用書。
目 錄
基 礎 篇
第1章 Python語言概述 2
1.1 Python簡史 2
1.2 Python的語言特點 3
1.3 搭建Python開發(fā)環(huán)境 4
1.3.1 Python的下載與安裝 4
1.3.2 Python命令行的使用 8
1.4 Python的開發(fā)工具 8
1.4.1 IDLE 9
1.4.2 PyCharm 9
1.4.3 Eclipse 10
1.5 第一個Python程序―Hello, World 11
1.6 Python的編碼規(guī)范 12
1.6.1 命名規(guī)則 12
1.6.2 代碼縮進 12
1.6.3 使用空行分隔代碼 13
1.6.4 語句的分隔 13
小結 14
習題 14
第2章 Python基本概念 15
2.1 基本數據類型 15
2.2 變量 17
2.2.1 變量的命名 17
2.2.2 變量的創(chuàng)建 18
2.3 運算符 19
2.3.1 算術運算符 19
2.3.2 關系運算符 19
2.3.3 邏輯運算符 20
2.3.4 位運算符 20
2.3.5 身份運算符 21
2.3.6 成員運算符 21
2.4 表達式 22
2.4.1 算術表達式 22
2.4.2 優(yōu)先級 22
2.5 賦值語句 23
2.5.1 賦值運算符 23
2.5.2 增強型賦值運算符 24
2.6 常用模塊與函數 25
2.6.1 常用內置函數 25
2.6.2 常用模塊及函數 27
2.7 基本輸入/輸出 28
2.7.1 基本輸出 29
2.7.2 基本輸入 29
小結 31
習題 31
第3章 Python控制結構 33
3.1 三種基本控制結構 33
3.2 選擇結構 33
3.2.1 單選擇結構―if語句 33
3.2.2 雙選擇結構―if-else語句 35
3.2.3 多選擇結構―if-elif-else語句 36
3.2.4 選擇結構的嵌套 38
3.3 實例:使用選擇結構進行程序設計 39
3.3.1 鑒別合法日期 39
3.3.2 判斷兩個圓的位置關系 41
3.4 循環(huán)結構 45
3.4.1 while循環(huán) 45
3.4.2 for循環(huán) 47
3.4.3 break語句與continue語句 48
3.4.4 循環(huán)結構的嵌套 49
3.5 實例:使用循環(huán)結構進行程序設計 50
3.5.1 計算質數 50
3.5.2 計算π的近似值 51
小結 53
習題 53
第4章 函數 54
4.1 函數的定義 54
4.2 定義函數 54
4.3 調用函數 55
4.4 變量的作用域 56
4.5 函數的參數 57
4.5.1 形參與實參 57
4.5.2 默認參數 58
4.5.3 位置參數和關鍵字參數 59
4.5.4 可變長度參數 60
4.6 返回多個值 61
4.7 實例:將功能封裝為函數 61
4.7.1 鑒別合法日期 61
4.7.2 封裝turtle模塊圖形函數 63
4.8 遞歸 65
4.9 實例:使用遞歸解決問題 67
4.9.1 實例:計算斐波那契數 67
4.9.2 實例:漢諾塔 68
4.10 lambda表達式 71
4.11 生成器 72
小結 73
習題 73
第5章 Python數據結構 75
5.1 列表 75
5.1.1 列表的基本操作 75
5.1.2 列表相關的函數 78
5.1.3 在函數中使用列表 79
5.1.4 列表查找 81
5.1.5 列表排序 83
5.1.6 多維列表 86
5.2 元組 87
5.2.1 元組的基本操作 87
5.2.2 元組封裝與序列拆封 89
5.2.3 元組與列表的比較 90
5.3 集合 90
5.3.1 集合的基本操作 90
5.3.2 子集與超集 91
5.3.3 集合運算 92
5.3.4 集合與列表的比較 93
5.4 字典 93
5.4.1 字典的基本操作 94
5.4.2 字典相關的函數 95
5.5 實例:使用數據結構進行程序設計 96
5.5.1 計算質數 96
5.5.2 詞頻統(tǒng)計 98
小結 99
習題 99
進 階 篇
第6章 使用模塊 101
6.1 模塊的創(chuàng)建 101
6.2 模塊的導入 102
6.3 包 103
6.3.1 模塊組織成包 103
6.3.2 從包中導入 104
6.3.3 包內引用 104
6.4 第三方包的安裝 105
小結 105
習題 106
第7章 字符串與正則表達式 107
7.1 字符串的基本操作 107
7.2 字符串相關函數 108
7.3 格式化字符串 110
7.4 實例:使用字符串進行程序設計 112
7.4.1 檢測回文串 112
7.4.2 字符串的簡單加密 113
7.5 字符編碼 117
7.5.1 字符編碼方式 117
7.5.2 使用Python處理中文 118
7.6 正則表達式 119
7.6.1 正則表達式簡介 120
7.6.2 使用re模塊處理正則表達式 122
7.7 實例:使用正則表達式進行程序設計 124
7.7.1 用戶注冊信息格式校驗 124
7.7.2 模擬scanf函數 126
小結 127
習題 127
第8章 面向對象編程 129
8.1 面向對象的概念 129
8.2 類與對象 129
8.2.1 定義一個類 130
8.2.2 構造類的對象 131
8.2.3 定義私有成員 133
8.3 運算符重載 134
8.4 實例:進行面向對象的程序設計 138
8.4.1 Circle類的實現 138
8.4.2 Fraction類的實現 142
8.5 繼承 145
小結 148
習題 148
第9章 異常處理 150
9.1 異常的概念 150
9.2 異常的拋出與捕獲 151
9.2.1 使用raise關鍵字拋出異常 151
9.2.2 使用try...except捕獲異常 152
9.2.3 使用else和finally子句處理異常 153
9.3 自定義異常 154
9.4 使用斷言 155
小結 155
習題 156
第10章 文件處理 157
10.1 文件的創(chuàng)建與讀寫 157
10.1.1 文件的創(chuàng)建與打開 157
10.1.2 文件的寫入 158
10.1.3 文件的讀取 159
10.1.4 設置文件讀取指針 160
10.2 文件和目錄操作 161
10.2.1 文件操作 161
10.2.2 目錄操作 162
10.2.3 文件和目錄操作實例 163
10.3 Python的流對象 169
10.3.1 標準輸入 169
10.3.2 標準輸出 170
10.3.3 日志輸出 170
10.4 實例:處理文件 171
10.4.1 獲取文件屬性 171
10.4.2 實例:獲取MP3文件的元數據 173
小結 175
習題 175
應 用 篇
第11章 使用Python進行GUI開發(fā) 177
11.1 GUI編程 177
11.2 Tkinter的主要組件 178
11.2.1 標簽 178
11.2.2 框架 179
11.2.3 按鈕 180
11.2.4 輸入框 180
11.2.5 單選按鈕和復選按鈕 181
11.2.6 列表框與滾動條 183
11.2.7 畫布 184
11.2.8 標準對話框 186
11.3 實例:使用Tkinter進行GUI編程―三連棋游戲 188
11.3.1 用戶界面設計 188
11.3.2 創(chuàng)建菜單 189
11.3.3 創(chuàng)建游戲面板 190
11.3.4 用戶界面與游戲的連接 191
小結 197
習題 198
第12章 使用Python進行數據管理 199
12.1 引言 199
12.2 數據對象的持久化 200
12.2.1 使用pickle模塊存取對象 200
12.2.2 使用shelve模塊隨機訪問對象 200
12.3 使用itertools模塊分析和處理數據 202
12.3.1 數據過濾函數 202
12.3.2 groupby函數 203
12.4 實例:教務信息數據分析與處理 204
12.5 Python中SQLite數據庫的使用 205
12.5.1 SQLite 206
12.5.2 連接數據庫 206
12.5.3 創(chuàng)建表 207
12.5.4 插入數據記錄 207
12.5.5 查詢數據記錄 208
12.5.6 更新和刪除數據記錄 209
12.5.7 回滾與關閉數據庫 209
12.6 實例:封裝MySQL數據庫操作 209
小結 211
習題 212
第13章 使用Python進行Web開發(fā) 213
13.1 Django 213
13.2 創(chuàng)建項目和模型 213
13.2.1 創(chuàng)建項目 213
13.2.2 數據庫設置 214
13.2.3 啟動服務器 215
13.2.4 創(chuàng)建模型 215
13.3 生成管理頁面 218
13.4 構建前端頁面 222
小結 225
習題 225
第14章 使用Python進行多任務編程 226
14.1 進程和線程 226
14.1.1 進程 226
14.1.2 線程 226
14.1.3 串行、并發(fā)與并行 227
14.2 Python中的多線程編程 228
14.2.1 線程的創(chuàng)建與管理 228
14.2.2 鎖機制:線程間的同步問題 231
14.2.3 Queue模塊:隊列同步 234
14.3 Python中的進程編程 237
14.3.1 進程的創(chuàng)建與終止 237
14.3.2 實例:編寫簡易的控制臺 239
14.3.3 使用subprocess模塊進行多進程管理 239
14.3.4 進程間通信 240
小結 243
習題 243
附錄A:ASCII碼表 244
附錄B:Python關鍵字 245
附錄C:Python開源項目介紹 246
參考文獻 249