本書共10章,主要內(nèi)容包括Python語(yǔ)言基礎(chǔ)、基本數(shù)據(jù)類型與表達(dá)式、程序的基本控制結(jié)構(gòu)、組合數(shù)據(jù)類型、函數(shù)、面向?qū)ο缶幊、文件操作、圖形用戶界面設(shè)計(jì)、Python科學(xué)計(jì)算與數(shù)據(jù)分析基礎(chǔ)、網(wǎng)絡(luò)爬蟲入門與應(yīng)用,并以附錄的形式介紹了Python開發(fā)環(huán)境搭建與程序調(diào)試方法、Python運(yùn)算符與優(yōu)先級(jí)、Python的內(nèi)置函數(shù)、Python中各類不同功能的庫(kù)。每一章幾乎都包含學(xué)習(xí)目標(biāo)、典型例題、應(yīng)用實(shí)例、本章小結(jié)和習(xí)題等,內(nèi)容敘述深入淺出、循序漸進(jìn),并提供相關(guān)知識(shí)點(diǎn)的視頻講解、例題源代碼下載及習(xí)題的參考答案等,方便教學(xué)。本書既可以作為本/?圃盒ython程序設(shè)計(jì)課程的教材,也可以作為廣大計(jì)算機(jī)愛好者學(xué)習(xí)Python的參考用書。
魏英,男,副教授,浙江科技學(xué)院信息與電子工程學(xué)院副院長(zhǎng),主持浙江省教育廳課堂教學(xué)改革項(xiàng)目"C++程序設(shè)計(jì)混合式教學(xué)改革實(shí)踐”,2016年;主持浙江科技學(xué)院精品在線開放課程建設(shè)重點(diǎn)項(xiàng)目"計(jì)算機(jī)基礎(chǔ)(C++程序設(shè)計(jì))”,2016年;浙江省精品課程"VB程序設(shè)計(jì)”
第1章 Python語(yǔ)言基礎(chǔ) 1
學(xué)習(xí)目標(biāo) 1
1.1 計(jì)算機(jī)系統(tǒng) 1
1.1.1 計(jì)算機(jī)系統(tǒng)的組成 1
1.1.2 計(jì)算機(jī)工作原理 2
1.2 程序設(shè)計(jì) 3
1.2.1 計(jì)算機(jī)程序 3
1.2.2 程序設(shè)計(jì)語(yǔ)言 3
1.2.3 程序設(shè)計(jì)方法 4
1.3 計(jì)算思維 5
1.4 認(rèn)識(shí)Python 6
1.5 編寫第一個(gè)Python程序 7
1.5.1 Python開發(fā)環(huán)境 7
1.5.2 運(yùn)行Python程序 8
1.5.3 Python程序的構(gòu)成 9
1.5.4 Python代碼規(guī)范 9
1.6 編程的基本方法 12
1.6.1 IPO編程模式 12
1.6.2 輸入/輸出函數(shù) 14
1.6.3 常量與變量 17
1.6.4 標(biāo)識(shí)符命名規(guī)則 19
1.7 繪圖入門 20
1.7.1 turtle庫(kù) 20
1.7.2 繪圖實(shí)例 22
1.8 應(yīng)用實(shí)例 23
本章小結(jié) 28
習(xí)題 29
第2章 基本數(shù)據(jù)類型與表達(dá)式 32
學(xué)習(xí)目標(biāo) 32
2.1 數(shù)據(jù)和數(shù)據(jù)類型的概念 32
2.1.1 數(shù)據(jù) 32
2.1.2 數(shù)據(jù)類型 33
2.2 基本數(shù)據(jù)類型 34
2.2.1 整數(shù)類型int 34
2.2.2 浮點(diǎn)數(shù)類型float 35
2.2.3 復(fù)數(shù)類型complex 35
2.2.4 字符串類型str 36
2.2.5 布爾類型bool 37
2.3 運(yùn)算符與表達(dá)式 37
2.3.1 運(yùn)算符與表達(dá)式的概念 37
2.3.2 算術(shù)運(yùn)算符 38
2.3.3 關(guān)系運(yùn)算符 39
2.3.4 邏輯運(yùn)算符 40
2.3.5 賦值運(yùn)算符 40
2.3.6 身份運(yùn)算符 41
2.4 相關(guān)內(nèi)置函數(shù)與math庫(kù) 42
2.4.1 相關(guān)內(nèi)置函數(shù) 42
2.4.2 math庫(kù)的使用 46
2.5 字符串的操作 47
2.5.1 字符串的基本操作 47
2.5.2 字符串的常用操作函數(shù) 49
2.5.3 字符串格式化 51
本章小結(jié) 54
習(xí)題 54
第3章 程序的基本控制結(jié)構(gòu) 56
學(xué)習(xí)目標(biāo) 56
3.1 算法及算法表示 56
3.1.1 概述 56
3.1.2 算法的表示 57
3.2 程序基本結(jié)構(gòu) 58
3.3 選擇結(jié)構(gòu) 61
3.3.1 單分支選擇結(jié)構(gòu) 61
3.3.2 雙分支選擇結(jié)構(gòu) 62
3.3.3 多分支選擇結(jié)構(gòu) 64
3.3.4 選擇結(jié)構(gòu)的嵌套 65
3.4 循環(huán)結(jié)構(gòu) 66
3.4.1 while語(yǔ)句 67
3.4.2 for語(yǔ)句 69
3.4.3 循環(huán)的嵌套結(jié)構(gòu) 71
3.4.4 break語(yǔ)句和continue語(yǔ)句 73
3.5 random庫(kù) 76
3.6 異常處理 78
3.6.1 異常概述 78
3.6.2 異常處理相關(guān)操作 79
3.7 應(yīng)用實(shí)例 82
本章小結(jié) 85
習(xí)題 85
第4章 組合數(shù)據(jù)類型 89
學(xué)習(xí)目標(biāo) 89
4.1 組合數(shù)據(jù)類型概述 89
4.2 序列類型的通用操作 90
4.2.1 遍歷操作 92
4.2.2 索引操作 92
4.2.3 切片操作 93
4.2.4 序列的加法與乘法 96
4.2.5 序列的長(zhǎng)度與最值 98
4.2.6 查找元素 98
4.2.7 序列應(yīng)用實(shí)例 99
4.3 列表類型 100
4.3.1 創(chuàng)建列表 100
4.3.2 修改列表內(nèi)容 101
4.3.3 添加和刪除列表元素 103
4.3.4 復(fù)制列表 105
4.3.5 列表應(yīng)用實(shí)例 106
4.3.6 列表推導(dǎo)式 108
4.4 元組類型 110
4.4.1 創(chuàng)建元組 110
4.4.2 序列封包與解包 111
4.4.3 元組應(yīng)用實(shí)例 112
4.5 集合類型 113
4.5.1 創(chuàng)建集合 114
4.5.2 集合的運(yùn)算符 114
4.5.3 添加和刪除集合元素 116
4.5.4 集合應(yīng)用實(shí)例 116
4.6 字典類型 118
4.6.1 創(chuàng)建字典 118
4.6.2 字典的基本操作 119
4.6.3 字典的方法 120
4.6.4 字典應(yīng)用實(shí)例 121
本章小結(jié) 122
習(xí)題 122
第5章 函數(shù) 125
學(xué)習(xí)目標(biāo) 125
5.1 函數(shù)概述 125
5.2 函數(shù)的定義與使用 127
5.2.1 函數(shù)的定義 127
5.2.2 函數(shù)的使用 128
5.2.3 函數(shù)的返回值 128
5.2.4 lambda函數(shù) 130
5.3 函數(shù)的參數(shù) 131
5.3.1 形參的設(shè)計(jì) 131
5.3.2 關(guān)鍵字參數(shù) 132
5.3.3 默認(rèn)值參數(shù) 133
5.3.4 可變數(shù)量參數(shù) 135
5.4 變量的作用域 136
5.5 函數(shù)的遞歸 138
5.5.1 函數(shù)的嵌套調(diào)用 138
5.5.2 遞歸的定義 139
5.5.3 函數(shù)的遞歸調(diào)用 140
5.6 函數(shù)應(yīng)用實(shí)例 141
5.7 模塊 144
5.7.1 導(dǎo)入模塊 144
5.7.2 導(dǎo)入模塊成員 144
5.7.3 自定義模塊 145
本章小結(jié) 146
習(xí)題 146
第6章 面向?qū)ο缶幊?149
學(xué)習(xí)目標(biāo) 149
6.1 概述 149
6.2 類和對(duì)象 151
6.2.1 類 151
6.2.2 屬性 151
6.2.3 方法 155
6.2.4 對(duì)象 159
6.2.5 構(gòu)造與析構(gòu) 161
6.2.6 封裝 162
6.3 繼承 164
6.4 多態(tài) 166
6.5 應(yīng)用實(shí)例 167
本章小結(jié) 169
習(xí)題 169
第7章 文件操作 172
學(xué)習(xí)目標(biāo) 172
7.1 文件的打開與關(guān)閉 172
7.1.1 使用open()方法打開文件 172
7.1.2 文件關(guān)閉 174
7.2 文件的讀/寫操作 174
7.2.1 讀文件 174
7.2.2 寫數(shù)據(jù) 176
7.3 一維數(shù)據(jù)和二維數(shù)據(jù) 177
7.3.1 一維數(shù)據(jù)、二維數(shù)據(jù)的存儲(chǔ)和讀/寫 177
7.3.2 采用CSV格式對(duì)一維數(shù)據(jù)文件的讀/寫 177
7.3.3 采用CSV格式對(duì)二維數(shù)據(jù)文件的讀/寫 178
7.4 文件應(yīng)用實(shí)例 180
本章小結(jié) 183
習(xí)題 183
第8章 圖形用戶界面設(shè)計(jì) 184
學(xué)習(xí)目標(biāo) 184
8.1 圖形用戶界面概述 184
8.2 tkinter編程概述 185
8.2.1 第一個(gè)tkinter GUI程序 185
8.2.2 設(shè)置窗口和組件的屬性 186
8.2.3 tkinter的事件處理 188
8.3 tkinter GUI的布局管理 190
8.3.1 pack()方法 190
8.3.2 grid()方法 191
8.3.3 place()方法 192
8.3.4 使用框架的復(fù)雜布局 194
8.4 tkinter的常用組件 194
8.4.1 tkinter組件概述 195
8.4.2 標(biāo)準(zhǔn)屬性 195
8.4.3 Label標(biāo)簽 196
8.4.4 Button按鈕 196
8.4.5 Entry輸入框 197
8.4.6 Text多行文本框 198
8.4.7 Listbox列表框 199
8.4.8 Radiobutton單選按鈕 200
8.4.9 Checkbutton復(fù)選框 201
8.4.10 ttk模塊控件 203
8.5 應(yīng)用實(shí)例 205
本章小結(jié) 208
習(xí)題 208
第9章 Python科學(xué)計(jì)算與數(shù)據(jù)分析基礎(chǔ) 211
學(xué)習(xí)目標(biāo) 211
9.1 科學(xué)計(jì)算和數(shù)據(jù)分析 211
9.2 Numpy及簡(jiǎn)單應(yīng)用 212
9.2.1 一維數(shù)組和二維數(shù)組 212
9.2.2 特殊數(shù)組的創(chuàng)建 213
9.2.3 數(shù)組的操作和運(yùn)算 215
9.3 Pandas及簡(jiǎn)單應(yīng)用 220
9.3.1 數(shù)據(jù)結(jié)構(gòu) 220
9.3.2 數(shù)據(jù)的讀取 220
9.3.3 數(shù)據(jù)統(tǒng)計(jì)與分析 222
9.4 Matplotlib及簡(jiǎn)單應(yīng)用 225
9.4.1 Matplotlib繪圖基本方法 225
9.4.2 Matplotlib圖像屬性設(shè)置 227
9.4.3 基于Matplotlib的常用圖形繪制 230
9.5 應(yīng)用實(shí)例 232
本章小結(jié) 234
習(xí)題 234
第10章 網(wǎng)絡(luò)爬蟲入門與應(yīng)用 236
學(xué)習(xí)目標(biāo) 236
10.1 網(wǎng)絡(luò)爬蟲概述 236
10.2 爬蟲的基本原理 237
10.2.1 網(wǎng)頁(yè)請(qǐng)求的基本過(guò)程 237
10.2.2 網(wǎng)頁(yè)解析的基本原理 240
10.2.3 URL地址的獲取 243
10.3 應(yīng)用實(shí)例 244
10.4 網(wǎng)絡(luò)爬蟲開發(fā)常用框架 247
10.4.1 Scrapy框架簡(jiǎn)介 247
10.4.2 Scrapy的組成部分 248
10.4.3 Scrapy的安裝 248
10.5 使用爬蟲框架構(gòu)建應(yīng)用實(shí)例 249
10.5.1 創(chuàng)建項(xiàng)目 249
10.5.2 填寫Items.py 249
10.5.3 填寫spider.py 250
10.5.4 填寫pipeline.py 251
10.5.5 運(yùn)行爬蟲 251
10.5.6 反爬措施與應(yīng)對(duì)方法 252
本章小結(jié) 253
習(xí)題 253
附錄A Python開發(fā)環(huán)境搭建與程序調(diào)試方法 255
附錄B Python運(yùn)算符與優(yōu)先級(jí) 278
附錄C Python的內(nèi)置函數(shù) 279
附錄D Python中各類不同功能的庫(kù) 281
參考文獻(xiàn) 284