Python全案例學(xué)習(xí)與實(shí)踐
定 價(jià):128 元
- 作者:沈紅衛(wèi)
- 出版時(shí)間:2019/9/1
- ISBN:9787121373008
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.561
- 頁(yè)碼:580
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
本書是一本覆蓋研究生、本?粕、中學(xué)生等所有Python學(xué)習(xí)者的入門書。以"夠用、適用、易學(xué)”為原則,組織、設(shè)計(jì)全書的框架和內(nèi)容,全書共包括四篇:第一篇——營(yíng)造環(huán)境,主要闡述學(xué)習(xí)的環(huán)境與平臺(tái)安裝、IDLE與Pycharm的使用、常見(jiàn)的內(nèi)外部模塊及其安裝。第二篇——掀起頭蓋,重點(diǎn)討論P(yáng)ython的主要語(yǔ)法:數(shù)據(jù)類型、變量常量、語(yǔ)句、輸入輸出、函數(shù)與模塊化、文件與對(duì)象、類、異常。第三篇——實(shí)戰(zhàn)演習(xí),主要展示了四個(gè)完整的應(yīng)用案例,涵蓋桌面小游戲、數(shù)據(jù)挖掘與分析、圖像識(shí)別與機(jī)器學(xué)習(xí)、智能檢測(cè)與控制。第四篇——繼續(xù)前進(jìn),著重討論了腳本文件的打包、代碼的Pythonic化和Python的博大精深。本書在內(nèi)容組織和框架設(shè)計(jì)上具有兩個(gè)鮮明特點(diǎn):全案例、基于讀者學(xué)習(xí)。從讀者學(xué)習(xí)的角度,組織每個(gè)章節(jié)的內(nèi)容體系,幾乎所有的知識(shí)點(diǎn)都輔之以范例,同時(shí)給出了四個(gè)完整的綜合性工程案例,這些都十分有利于學(xué)習(xí)者學(xué)習(xí)和模仿。本書適合于所有層次對(duì)Python感興趣的專業(yè)和非專業(yè)的讀者。
沈紅衛(wèi),男,1966年,教授/院長(zhǎng),從事高等教育教學(xué)工作24年,曾主講《單片機(jī)原理及其應(yīng)用》、《電子技術(shù)》、《C語(yǔ)言》、《虛擬儀器技術(shù)》等課程。獲得國(guó)家教學(xué)成果獎(jiǎng)二等獎(jiǎng)一項(xiàng),主持省級(jí)精品課程1門,出版省級(jí)重點(diǎn)教材2本、專著4部,主持教育部、浙江省教育教學(xué)類課題6項(xiàng)。 是浙江省電工電子優(yōu)秀教學(xué)團(tuán)隊(duì)的主持人,浙江省“十二五”新興特色專業(yè)和浙江省“十三五”特色專業(yè)的負(fù)責(zé)人。主編的1部教材曾被評(píng)為浙江省“十二五”優(yōu)秀教材。
目 錄
第一篇 營(yíng)造環(huán)境
第1章 Python及其安裝
1.1 我為什么要學(xué)習(xí)Python
1.1.1 它的廣泛性
1.1.2 它的新穎性
1.1.3 它的生態(tài)性
1.1.4 Python的應(yīng)用領(lǐng)域舉例
1.1.5 Python的局限性
1.2 學(xué)習(xí)Python的必備神器
1.2.1 Python的底細(xì)
1.2.2 PyCharm
1.3 安裝和設(shè)置Python
1.3.1 獲取Python
1.3.2 安裝Python
1.3.3 設(shè)置Python
思考與實(shí)踐
第2章 IDLE的使用
2.1 IDLE的安裝與設(shè)置
2.1.1 IDLE的安裝
2.1.2 IDLE的啟動(dòng)
2.1.3 IDLE的個(gè)性化設(shè)置
2.2 Edit編輯模式與Shell命令行模式的切換
2.2.1 Edit編輯模式與Shell命令行模式的切換
2.2.2 IDLE的文本編輯功能
2.3 在IDLE中運(yùn)行程序
2.3.1 在Edit模式下運(yùn)行程序
2.3.2 在Shell模式下運(yùn)行程序
2.4 IDLE的程序調(diào)試功能
2.4.1 兩種調(diào)試方法
2.4.2 在Shell模式下的程序調(diào)試
2.4.3 在Edit模式下的程序調(diào)試
2.4.4 如何斷點(diǎn)調(diào)試
2.5 在Shell模式下如何清屏
思考與實(shí)踐
第3章 安裝PyCharm
3.1 PyCharm及其安裝
3.1.1 PyCharm的三種版本形式
3.1.2 獲取PyCharm
3.1.3 安裝PyCharm
3.2 PyCharm的個(gè)性化設(shè)置
3.2.1 設(shè)置入口
3.2.2 外觀設(shè)置
3.2.3 Editor與自動(dòng)代碼補(bǔ)齊設(shè)置
3.2.4 解釋器(Interpreter)設(shè)置
3.2.5 運(yùn)行鍵設(shè)置
思考與實(shí)踐
第4章 Python的標(biāo)準(zhǔn)資源
4.1 Python 有哪些內(nèi)置的標(biāo)準(zhǔn)模塊
4.1.1 通過(guò)help()命令查看內(nèi)置模塊
4.1.2 通過(guò)IDLE的help菜單查看內(nèi)置模塊
4.1.3 常用內(nèi)置模塊及其功能介紹
4.1.4 內(nèi)置模塊的主要函數(shù)(方法)簡(jiǎn)介
4.2 內(nèi)置模塊的應(yīng)用舉例
4.2.1 路徑相關(guān)的舉例
4.2.2 時(shí)間相關(guān)的舉例
4.3 Python有哪些內(nèi)置函數(shù)
4.3.1 如何查看Python有哪些內(nèi)置函數(shù)
4.3.2 內(nèi)置函數(shù)及其功能
4.3.3 內(nèi)置函數(shù)的應(yīng)用舉例
思考與實(shí)踐
第5章 Python的外部資源
5.1 為什么要安裝外部模塊
5.2 如何安裝外部模塊
5.2.1 升級(jí)更新安裝工具
5.2.2 使用pip安裝外部模塊
5.2.3 使用easy_install安裝外部模塊
5.3 安裝后的外部模塊導(dǎo)入PyCharm
5.4 通過(guò)PyCharm安裝外部庫(kù)
5.4.1 通過(guò)Project Interpreter方式安裝外部庫(kù)
5.4.2 通過(guò)Plugins方式安裝外部庫(kù)
5.5 常用的外部模塊及其應(yīng)用
5.5.1 常用的外部模塊
5.5.2 外部模塊的應(yīng)用舉例
思考與實(shí)踐
第二篇 掀起頭蓋
第6章 我的Python處女作
6.1 新建工程
6.1.1 新建工程
6.1.2 新建Python文件
6.1.3 配置工程并運(yùn)行
6.2 關(guān)于工程及其要注意的三個(gè)事項(xiàng)
6.2.1 關(guān)于首次運(yùn)行程序的注意事項(xiàng)
6.2.2 關(guān)于工程的必要設(shè)置
6.2.3 關(guān)于運(yùn)行與調(diào)試功能的設(shè)置問(wèn)題
6.2.4 關(guān)于三種運(yùn)行方式
思考與實(shí)踐
第7章 Python的數(shù)據(jù)類型
7.1 Python程序的基本組成
7.1.1 一個(gè)溫度轉(zhuǎn)換的例子
7.1.2 程序的注釋
7.1.3 語(yǔ)句
7.1.4 常量
7.1.5 變量
7.1.6 標(biāo)識(shí)符
7.1.7 函數(shù)
7.2 Python的數(shù)據(jù)類型
7.2.1 Python的數(shù)據(jù)類型分類
7.2.2 Python 中變量的基本特性
7.3 Python的常量
7.3.1 數(shù)字
7.3.2 字符串
7.3.3 布爾值
7.3.4 空值
7.4 Python的基本類型變量
7.4.1 變量的使用
7.4.2 基本變量的賦值
7.4.3 變量的地址
7.5 Python的構(gòu)造類型變量
7.5.1 String(字符串)
7.5.2 list(列表)
7.5.3 tuple(元組)
7.5.4 Set(集合)
7.5.5 Dictionary(字典)
7.6 歸納與總結(jié)
7.6.1 各種類型的相互轉(zhuǎn)化
7.6.2 字符串、列表、元組、字典和集合的異同點(diǎn)
思考與實(shí)踐
第8章 Python的數(shù)據(jù)運(yùn)算
8.1 運(yùn)算的分類
8.2 運(yùn)算符的功能與特性
8.2.1 算術(shù)運(yùn)算
8.2.2 比較運(yùn)算
8.2.3 賦值運(yùn)算
8.2.4 邏輯運(yùn)算符
8.2.5 成員運(yùn)算
8.2.6 身份運(yùn)算
8.2.7 按位運(yùn)算符
8.3 運(yùn)算的優(yōu)先級(jí)
8.3.1 優(yōu)先級(jí)與結(jié)合性
8.3.2 優(yōu)先級(jí)的使用舉例
思考與實(shí)踐
第9章 鍵盤輸入與屏幕輸出
9.1 鍵盤輸入與input()函數(shù)
9.1.1 input()函數(shù)
9.1.2 類型之間的轉(zhuǎn)換
9.2 屏幕輸出與print()函數(shù)
9.2.1 print()函數(shù)的功能
9.2.2 print()的三種使用形式
9.3 練一練:通用倒計(jì)時(shí)器
9.3.1 程序設(shè)計(jì)要求與具體程序
9.3.2 程序的兩種運(yùn)行方式
9.4 歸納與總結(jié)
思考與實(shí)踐
第10章 學(xué)會(huì)選擇靠if語(yǔ)句
10.1 選擇問(wèn)題與if語(yǔ)句
10.2 if語(yǔ)句的三種形式
10.2.1 if的第一種形式
10.2.2 if的第二種形式
10.2.3 if語(yǔ)句的第三種形式
10.3 多重if語(yǔ)句與if的嵌套
10.4 關(guān)于if語(yǔ)句的重要小結(jié)
10.4.1 關(guān)于if語(yǔ)句的小結(jié)
10.4.2 練一練——溫度轉(zhuǎn)換升級(jí)版1
思考與實(shí)踐
第11章 重復(fù)操作與循環(huán)語(yǔ)句
11.1 循環(huán)及其應(yīng)用
11.2 while語(yǔ)句與for語(yǔ)句
11.2.1 while語(yǔ)句
11.2.2 for語(yǔ)句
11.3 continue和break語(yǔ)句
11.4 練一練——攝氏與華氏溫度轉(zhuǎn)換
11.4.1 程序設(shè)計(jì)要求與具體程序
11.4.2 程序的詳細(xì)分析
11.5 歸納與總結(jié)
11.5.1 循環(huán)語(yǔ)句for與while的else擴(kuò)展
11.5.2 語(yǔ)句break與 continue的區(qū)別
思考與實(shí)踐
第12章 函數(shù)讓程序的優(yōu)雅
12.1 什么是函數(shù)
12.1.1 函數(shù)的概念
12.1.2 為什么要使用函數(shù)
12.2 函數(shù)的定義與調(diào)用
12.2.1 如何定義一個(gè)函數(shù)
12.2.2 如何調(diào)用函數(shù)
12.3 函數(shù)的參數(shù)傳遞與不定長(zhǎng)參數(shù)
12.3.1 可變類型參數(shù)的傳遞與不可變類型參數(shù)的傳遞
12.3.2 必須參數(shù)、默認(rèn)參數(shù)與關(guān)鍵詞參數(shù)
12.3.3 不定長(zhǎng)參數(shù)
12.4 匿名函數(shù)
12.5 變量的作用范圍
12.6 練一練——剪刀石頭布游戲
12.6.1 程序的設(shè)計(jì)要求與算法設(shè)計(jì)
12.6.2 完整程序
12.7 歸納與總結(jié)
12.7.1 函數(shù)的意義
12.7.2 return 語(yǔ)句
12.7.3 關(guān)于默認(rèn)參數(shù)
12.7.4 if __name__ =='__main__'的作用
思考與實(shí)踐
第13章 “分而治之”與程序的模塊化
13.1 模塊化及其意義
13.1.1 為什么要模塊化
13.1.2 什么是模塊
13.2 如何定義和使用模塊
13.2.1 中模塊——文件模塊的定義與應(yīng)用
13.2.2 模塊是如何被找到并引用的——模塊搜索路徑
13.3 大模塊——包的定義與應(yīng)用
13.3.1 什么是“包”
13.3.2 如何定義包
13.3.3 包的使用
13.4 歸納和總結(jié)
思考與實(shí)踐
第14章 文件與數(shù)據(jù)格式化
14.1 文件及其操作
14.1.1 文件的概述
14.1.2 打開(kāi)文件——open()函數(shù)
14.1.3 文件打開(kāi)舉例
14.1.4 讀文件
14.1.5 寫文件
14.1.6 文件指針及其移動(dòng)
14.1.7 關(guān)閉文件
14.2 文件的應(yīng)用舉例——詞頻統(tǒng)計(jì)
14.2.1 英文文獻(xiàn)的詞頻統(tǒng)計(jì)
14.2.2 jieba模塊與中文文獻(xiàn)的詞頻統(tǒng)計(jì)
14.3 CSV文件與JSON文件的操作
14.3.1 CSV格式文件及其操作
14.3.2 JSON格式文件及其操作
14.4 歸納與補(bǔ)充
14.4.1 關(guān)于文件的幾點(diǎn)注意
14.4.2 文件的迭代
思考與實(shí)踐
第15章 面向?qū)ο笈c類——讓程序更人性化
15.1 面向?qū)ο笈c類
15.1.1 面向過(guò)程的程序設(shè)計(jì)
15.1.2 面向?qū)ο蟮某绦蛟O(shè)計(jì)
15.1.3 類(Class)
15.2 類的定義
15.2.1 類的定義
15.2.2 靜態(tài)方法、類方法與類變量
15.2.3 私有屬性和私有方法
15.3 類的使用
15.3.1 不帶默認(rèn)屬性的類及其使用
15.3.2 帶默認(rèn)參數(shù)的類及其使用
15.3.3 類的組合使用
15.4 類的封裝性
15.4.1 什么是封裝
15.4.2 如何封裝
15.5 類的繼承性
15.5.1 什么是繼承
15.5.2 類的單繼承
15.5.3 構(gòu)造函數(shù)的繼承
15.5.4 類的多繼承
15.5.5 類的多級(jí)繼承
15.5.6 類的混合繼承
15.6 類的多態(tài)性
15.6.1 什么是多態(tài)性
15.6.2 多態(tài)性舉例
15.7 從模塊中導(dǎo)入類
15.8 歸納與總結(jié)
15.8.1 類方法的屬性化
15.8.2 關(guān)于內(nèi)置變量__mro__
15.8.3 issubclass()與isinstance()
15.8.4 dir()
思考與實(shí)踐
第16章 異常處理讓程序健壯
16.1 錯(cuò)誤與異常
16.1.1 錯(cuò)誤(Error)
16.1.2 異常(Exception)
16.1.3 常見(jiàn)的標(biāo)準(zhǔn)異常
16.1.4 自定義異常
16.1.5 為什么要進(jìn)行異常處理
16.2 異常處理的一般方法——try語(yǔ)句
16.2.1 try語(yǔ)句的一般語(yǔ)法
16.2.2 try語(yǔ)句的執(zhí)行過(guò)程分析
16.3 異常處理的特殊方法——with語(yǔ)句
16.3.1 上下文管理
16.3.2 為什么要使用with語(yǔ)句
16.3.3 with語(yǔ)句的一般形式
16.3.4 with語(yǔ)句的工作機(jī)理
16.3.5 自定義上下文管理器
16.3.6 以Socket通信舉例說(shuō)明上下文管理器的定義
16.4 歸納與補(bǔ)充
16.4.1 關(guān)于try
16.4.2 關(guān)于異常的其他問(wèn)題
16.4.3 關(guān)于Socket通信的再說(shuō)明
思考與實(shí)踐
第三篇 實(shí)戰(zhàn)演習(xí)
第17章 桌面小游戲——剪刀石頭布
17.1 圖形化人機(jī)界面GUI及其應(yīng)用
17.2 基于GUI的剪刀石頭布游戲的算法與類的設(shè)計(jì)
17.2.1 算法設(shè)計(jì)
17.2.2 類的設(shè)計(jì)
17.2.3 計(jì)算機(jī)出拳的實(shí)現(xiàn)
17.2.4 最高得分的保存與讀取
17.2.5 圖形化界面
17.2.6 按鍵與鼠標(biāo)的捕捉與處理
17.3 編輯程序
17.3.1 新建PyCharm工程
17.3.2 完整的源程序
17.3.3 程序運(yùn)行效果
17.4 歸納與總結(jié)
17.4.1 設(shè)置解釋器時(shí)出現(xiàn)“Cannot Save Setting”錯(cuò)誤及其解決
17.4.2 將代碼生成可執(zhí)行文件
思考與實(shí)踐
第18章 數(shù)據(jù)挖掘與分析——Bilibili視頻爬蟲
18.1 數(shù)據(jù)挖掘與網(wǎng)絡(luò)爬蟲
18.1.1 數(shù)據(jù)挖掘
18.1.2 網(wǎng)絡(luò)爬蟲
18.1.3 網(wǎng)絡(luò)爬蟲的基本原理
18.1.4 實(shí)現(xiàn)網(wǎng)絡(luò)爬蟲的關(guān)鍵技術(shù)
18.1.5 爬蟲的基本框架
18.1.6 反爬與Robots協(xié)議
18.2 Python網(wǎng)絡(luò)爬蟲的開(kāi)發(fā)平臺(tái)與環(huán)境
18.3 爬蟲的案例——B站網(wǎng)絡(luò)爬蟲
18.3.1 功能與設(shè)計(jì)要求
18.3.2 目標(biāo)URL和應(yīng)用接口的獲取
18.3.3 舉例:如何快速找到B站全站視頻信息的公共接口——api
18.3.4 算法與流程圖
18.3.5 多進(jìn)程與多線程的選擇
18.3.6 完整程序代碼
18.4 歸納與總結(jié)
18.4.1 關(guān)于requests中g(shù)et方法的幾點(diǎn)注意事項(xiàng)
18.4.2 爬蟲尺寸
18.4.3 反爬蟲技術(shù)
思考與實(shí)踐
第19章 圖像識(shí)別與機(jī)器學(xué)習(xí)——字符型驗(yàn)證碼自動(dòng)識(shí)別
19.1 機(jī)器視覺(jué)與機(jī)器學(xué)習(xí)
19.1.1 機(jī)器視覺(jué)
19.1.2 機(jī)器學(xué)習(xí)
19.1.3 機(jī)器學(xué)習(xí)與神經(jīng)網(wǎng)絡(luò)
19.2 Tensorflow及其卷積神經(jīng)網(wǎng)絡(luò)
19.2.1 Tensorflow及其介紹
19.2.2 TensorFlow的程序舉例
19.2.3 基于TensorFlow的卷積神經(jīng)網(wǎng)絡(luò)
19.3 字符型驗(yàn)證碼的自動(dòng)識(shí)別
19.3.1 字符型驗(yàn)證碼
19.3.2 自動(dòng)識(shí)別字符型驗(yàn)證碼的兩種方法
19.4 字符型驗(yàn)證碼自動(dòng)識(shí)別程序的實(shí)現(xiàn)
19.4.1 字符型驗(yàn)證碼自動(dòng)識(shí)別程序的算法設(shè)計(jì)
19.4.2 字符型驗(yàn)證碼自動(dòng)識(shí)別程序架構(gòu)
19.4.3 字符型驗(yàn)證碼自動(dòng)識(shí)別程序
19.4.4 程序運(yùn)行結(jié)果及其分析
19.5 歸納與小結(jié)
19.5.1 關(guān)于CNN模型
19.5.2 關(guān)于TensorFlow的一些問(wèn)題
19.5.3 關(guān)于深度學(xué)習(xí)框架的問(wèn)題
思考與實(shí)踐
第20章 智能控制——基于串口控制的二極管花樣顯示
20.1 項(xiàng)目的設(shè)計(jì)目標(biāo)
20.1.1 項(xiàng)目設(shè)計(jì)要求
20.1.2 串口及其設(shè)置
20.2 Pyboard開(kāi)發(fā)板及其應(yīng)用
20.2.1 Pyboard板
20.2.2 Pyboard板的安裝
20.2.3 Pyboard板的控制方式
20.2.4 Pyboard板與上位機(jī)的串口通信測(cè)試
20.3 發(fā)光二極管顯示板
20.4 項(xiàng)目的算法及其分析
20.4.1 上位機(jī)程序的算法
20.4.2 下位機(jī)程序的算法
20.5 項(xiàng)目的程序
20.5.1 上位機(jī)程序
20.5.2 下位機(jī)程序
20.6 實(shí)際運(yùn)行效果及其分析
20.6.1 樣機(jī)及其運(yùn)行演示
20.6.2 程序運(yùn)行要點(diǎn)
20.6.3 Pyboard板的資源
20.6.4 歸納與小結(jié)
思考與實(shí)踐
第四篇 繼續(xù)前進(jìn)
第21章 程序的調(diào)試、測(cè)試與assert斷言
21.1 程序的調(diào)試與測(cè)試
21.1.1 調(diào)試程序的方法
21.1.2 使用Python內(nèi)置單步調(diào)試器(Pdb)調(diào)試程序
21.1.3 利用IDE集成開(kāi)發(fā)環(huán)境調(diào)試程序
21.2 測(cè)試程序的方法
21.2.1 為什么要對(duì)程序進(jìn)行測(cè)試
21.2.2 通過(guò)unittest實(shí)現(xiàn)一般測(cè)試
21.2.3 使用TestSuite進(jìn)行測(cè)試
21.3 歸納與小結(jié)
思考與實(shí)踐
第22章 Python程序的打包與發(fā)布
22.1 為什么要將程序打包
22.2 如何將程序打包
22.2.1 打包成.pyc文件
22.2.2 Python程序的運(yùn)行過(guò)程
22.2.3 打包成.exe文件
22.3 歸納與小結(jié)
思考與實(shí)踐
第23章 Python那些不得不說(shuō)的事情
23.1 如何使程序更Pythonic
23.1.1 Python程序的基本原則
23.1.2 交換變量值(Swap Values)
23.1.3 合并字符串
23.1.4 使用關(guān)鍵字——in
23.1.5 Python的True值(Truth Values)
23.1.6 Enumerate——索引和元素(Index & Item)
23.1.7 Python方法中參數(shù)的默認(rèn)值
23.2 迭代器(Iterator)
23.2.1 迭代器
23.2.2 列表生成式(List Comprehensions)
23.3 生成器(Generator)
23.3.1 生成器
23.3.2 yield及其使用
23.4 歸納與小結(jié)
思考與實(shí)踐