Python 程序設(shè)計(jì):從基礎(chǔ)開發(fā)到數(shù)據(jù)分析
定 價(jià):59.8 元
叢書名:普通高等教育人工智能與大數(shù)據(jù)系列教材
- 作者:艾小偉
- 出版時(shí)間:2021/8/1
- ISBN:9787111681564
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP311.561
- 頁(yè)碼:298
- 紙張:
- 版次:
- 開本:16開
本教材包括兩部分內(nèi)容:第1部分是前9章,內(nèi)容為Python編程基礎(chǔ)知識(shí);第2部分是后5章,內(nèi)容為Python數(shù)據(jù)分析基礎(chǔ)知識(shí)及應(yīng)用。
第1章從編程語(yǔ)言的特點(diǎn)入手,介紹Python的學(xué)習(xí)路徑及其安裝方法。第2章介紹Python的基礎(chǔ)語(yǔ)法,包括變量、數(shù)據(jù)類型、運(yùn)算符、內(nèi)置函數(shù)。第3章介紹Python的四種序列結(jié)構(gòu),包括列表、元組、字典、集合。第4章介紹Python的條件控制、循環(huán)控制結(jié)構(gòu)。第5章介紹Python的自定義函數(shù)。第6章介紹Python常用標(biāo)準(zhǔn)庫(kù)、第三方庫(kù)的功能。第7章介紹字符串的編碼格式及常用方法。第8章介紹Python對(duì)文本文件、二進(jìn)制文件的操作。第9章介紹Python面向?qū)ο缶幊痰臋C(jī)制及特點(diǎn)。第10章介紹NumPy數(shù)組及數(shù)組間的運(yùn)算。第11章介紹Matplotlib庫(kù)下6種基本圖形及動(dòng)態(tài)圖的繪制。第12章介紹Python與MySQL數(shù)據(jù)庫(kù)編程。第13章介紹Pandas統(tǒng)計(jì)分析基礎(chǔ)。第14章介紹skl庫(kù)下,常用機(jī)器學(xué)習(xí)算法的使用。
本教材配套以下教學(xué)資源:教學(xué)PPT、習(xí)題答案、數(shù)據(jù)分析支撐文件、程序代碼等,
請(qǐng)選用本書作教材的老師登錄www.cmpedu.com注冊(cè)下載,或發(fā)郵件至jinacmp@163.com索取(注明學(xué)校名+姓名)。
書中的程序代碼均在Python 3.8、Anaconda 3上調(diào)試通過,有些需要安裝第三方庫(kù)。
本書可作為普通高校計(jì)算機(jī)、大數(shù)據(jù)、人工智能、金融管理等專業(yè)的教材,也可供廣大從事數(shù)據(jù)分析、人工智能、機(jī)器學(xué)習(xí)等應(yīng)用系統(tǒng)開發(fā)的技術(shù)人員參考。
目錄
前言
教材使用說明
數(shù)據(jù)清單
第1章Python概述
1.1Python語(yǔ)言簡(jiǎn)介
1.1.1編程語(yǔ)言概述
1.1.2Python語(yǔ)言的特點(diǎn)
1.1.3Python語(yǔ)言的應(yīng)用領(lǐng)域
1.2Python學(xué)習(xí)路徑
1.2.1Python 的 3 個(gè)版本
1.2.2Python知識(shí)表格
1.2.3Jupyter Notebook:學(xué)習(xí)別人的
源代碼的利器
1.3Python 安裝
1.3.1Windows 系統(tǒng)安裝 Python
1.3.2Python 開發(fā)環(huán)境IDEL
1.4Python編程規(guī)范
1.4.1Python 文件類型
1.4.2程序書寫規(guī)范
1.5Python 第三方庫(kù)的安裝
1.5.1第三方庫(kù)的安裝方法
1.5.2Anaconda 發(fā)行版及安裝
習(xí)題
第2章Python基礎(chǔ)語(yǔ)法
2.1變量及數(shù)據(jù)類型
2.1.1變量及命名規(guī)范
2.1.2數(shù)值型數(shù)據(jù)
2.1.3字符串型數(shù)據(jù)
2.1.4轉(zhuǎn)義字符
2.1.5組合數(shù)據(jù)類型
2.2Python運(yùn)算符
2.2.1算術(shù)運(yùn)算符(+、-、、 /、 //、
%、)
2.2.2關(guān)系運(yùn)算符(<、<=、>、>=、
==、 !=)
2.2.3邏輯運(yùn)算符(and、or、not)
2.2.4成員測(cè)試運(yùn)算符(in、not in)
2.2.5集合運(yùn)算符( &、、^ 、-)
2.2.6各種各樣的賦值運(yùn)算符
2.2.7位運(yùn)算符
2.3Python內(nèi)置函數(shù)
2.3.1數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)換與類型判斷
2.3.2最大值、最小值與求和函數(shù)
2.3.3區(qū)間迭代對(duì)象生成函數(shù)
2.3.4基本輸入、輸出函數(shù)
2.3.5排序函數(shù)
2.3.6枚舉與迭代
2.3.7壓縮函數(shù)
2.3.8打開磁盤上的文件
2.4Python保留字說明
習(xí)題
第3章Python 序列結(jié)構(gòu)
3.1序列概要
3.1.1序列索引
3.1.2序列切片
3.1.3序列相加、相乘
3.1.4檢查元素是否包含在序列中
(含集合、字典)
3.1.5和序列相關(guān)的內(nèi)置函數(shù)
3.2列表與列表推導(dǎo)式
3.2.1創(chuàng)建、刪除列表
3.2.2訪問列表元素
3.2.3列表對(duì)象常用方法
3.2.4列表支持的運(yùn)算符
3.2.5與列表相關(guān)的內(nèi)置函數(shù)
3.2.6列表推導(dǎo)式
3.2.7列表多元素訪問:切片
3.3元組與生成器
3.3.1創(chuàng)建元組及訪問元素
3.3.2元組與列表的異同
3.3.3Python的生成器
3.4字典與字典推導(dǎo)式
3.4.1創(chuàng)建字典
3.4.2訪問字典元素
3.4.3字典元素的添加、修改與刪除
3.4.4字典推導(dǎo)式
3.4.5字典應(yīng)用案例
3.5集合與集合推導(dǎo)式
3.5.1集合的創(chuàng)建與訪問
3.5.2集合元素的增加與刪除
3.5.3兩個(gè)集合的運(yùn)算
3.5.4集合推導(dǎo)式
3.5.5集合應(yīng)用案例
習(xí)題
第4章Python 程序控制結(jié)構(gòu)
4.1條件表達(dá)式
4.2if分支結(jié)構(gòu)
4.3while循環(huán)和for-in循環(huán)
4.3.1循環(huán)結(jié)構(gòu)語(yǔ)法格式
4.3.2else子語(yǔ)句在循環(huán)體中的妙用
4.3.3break和continue語(yǔ)句
4.4Python在無窮級(jí)數(shù)求和方面的應(yīng)用
習(xí)題
第5章Python 自定義函數(shù)
5.1函數(shù)的定義與調(diào)用
5.1.1函數(shù)定義與調(diào)用基本語(yǔ)法
5.1.2函數(shù)的說明文檔
5.2函數(shù)參數(shù)
5.2.1位置參數(shù)
5.2.2關(guān)鍵字參數(shù)
5.2.3默認(rèn)參數(shù)
5.2.4可變長(zhǎng)參數(shù)
5.3變量的作用域
5.3.1Python局部變量
5.3.2Python全局變量
5.4lambda 表達(dá)式
5.4.1lambda表達(dá)式的創(chuàng)建及其特點(diǎn)
5.4.2lambda函數(shù)的用法
5.5生成器函數(shù)
5.5.1生成器概念及用法
5.5.2生成器函數(shù)與普通函數(shù)的比較
5.6函數(shù)的遞歸調(diào)用
5.7函數(shù)精彩案例賞析
5.8提高代碼可讀性的幾點(diǎn)建議
習(xí)題
第6章Python常用庫(kù)
6.1Python 庫(kù)介紹
6.2Python 常用標(biāo)準(zhǔn)庫(kù)
6.2.1math庫(kù)
6.2.2random庫(kù)
6.2.3string庫(kù)
6.2.4sys庫(kù)
6.2.5os庫(kù)
6.2.6copy庫(kù)
6.2.7time庫(kù)
6.2.8datetime庫(kù)
6.2.9itertools庫(kù)
6.2.10其他標(biāo)準(zhǔn)庫(kù)
6.3Python 常用第三方庫(kù)
6.3.1PIL
6.3.2OpenCV
6.3.3speech
6.3.4pyttsx3庫(kù)
6.3.5SciPy庫(kù)
6.3.6Python網(wǎng)絡(luò)庫(kù)
6.3.7Python數(shù)據(jù)庫(kù)操作庫(kù)
習(xí)題
第7章Python字符串
7.1內(nèi)置的字符串處理函數(shù)
7.2字符串編碼格式
7.2.1ASCII碼
7.2.2GB 18030碼
7.2.3Unicode碼
7.2.4UTF-8碼
7.2.5Python字符串編碼函數(shù):bytes()、
encode()、decode()
7.3字符串格式化
7.3.1使用%操作符進(jìn)行格式化
7.3.2使用format() 方法進(jìn)行格
式化
7.4字符串對(duì)象常用方法
7.4.1查找
7.4.2替換
7.4.3拆分
7.4.4連接
7.4.5轉(zhuǎn)換
7.4.6刪除
7.4.7判斷字符串開始或結(jié)束
7.4.8判斷字符串中字符
7.4.9字符串切片
7.4.10zip()、sorted()、reversed()、
enumerate()、map()、eval()
7.5jieba庫(kù)的使用
7.5.1jieba庫(kù)概述
7.5.2jieba庫(kù)的常用函數(shù)
7.5.3jieba分詞的原理
7.5.4統(tǒng)計(jì)三國(guó)演義中人物的出場(chǎng)
次數(shù)
7.6綜合案例解析
習(xí)題
第8章Python文件操作
8.1文件及其分類
8.2文件夾及文件操作
8.2.1文件夾操作
8.2.2文件打開函數(shù)
8.2.3文件對(duì)象屬性與常用方法
8.2.4上下文管理語(yǔ)句with
8.2.5讀寫文本文件案例
8.3常見二進(jìn)制文件的操作方法
8.3.1使用open() 讀寫二進(jìn)制文件
8.3.2使用pickle模塊讀寫dat文件
8.3.3使用struct模塊讀寫二進(jìn)制文件
8.3.4使用shelve模塊實(shí)現(xiàn)數(shù)據(jù)二進(jìn)制
持久化保存
8.3.5使用xlrd、openpyxl 模塊讀Excel
文件
8.3.6使用docx 模塊讀寫Word 文件
習(xí)題
第9章面向?qū)ο蟪绦蛟O(shè)計(jì)
9.1程序設(shè)計(jì)的方法
9.1.1結(jié)構(gòu)化程序設(shè)計(jì)
9.1.2面向?qū)ο蟪绦蛟O(shè)計(jì)
9.2類的定義與使用
9.3屬性與方法
9.3.1類變量和實(shí)例變量
9.3.2私有變量與公有變量
9.3.3類方法與實(shí)例方法
9.3.4屬性
9.3.5封裝
9.4繼承
9.5特殊方法
9.6綜合案例解析
習(xí)題
第10章NumPy庫(kù)
10.1NumPy數(shù)組對(duì)象ndarray
10.1.1創(chuàng)建數(shù)組
10.1.2生成隨機(jī)數(shù)
10.1.3通過索引訪問數(shù)組
10.2NumPy通用函數(shù)及數(shù)組之間的運(yùn)算
10.2.1四則運(yùn)算
10.2.2ufunc函數(shù)的廣播機(jī)制(慎用)
10.2.3利用 NumPy 進(jìn)行統(tǒng)計(jì)分析
10.2.4在數(shù)組中插入一行(或一列)
10.3NumPy 矩陣運(yùn)算
10.3.1創(chuàng)建NumPy矩陣
10.3.2NumPy矩陣運(yùn)算
10.3.3NumPy下的線性代數(shù)運(yùn)算
10.3.4Python中列表、矩陣、數(shù)組之間
的轉(zhuǎn)換
10.4NumPy 讀寫文件
10.4.1用np.load()、np.save() 讀寫
npy 或 npz 文件
10.4.2用np.loadtxt()、np.savetxt()
讀寫txt 或csv 文本文件
習(xí)題
第11章Matplotlib庫(kù)與數(shù)據(jù)可視化
11.1初識(shí)Matplotlib
11.2掌握pyplot基礎(chǔ)語(yǔ)法
11.2.1創(chuàng)建畫布與創(chuàng)建子圖
11.2.2添加畫布內(nèi)容:標(biāo)題、坐標(biāo)軸、
圖例
11.2.3保存與展示圖形
11.3繪制折線圖plt.plot()
11.3.1折線圖plot函數(shù)完整語(yǔ)法
11.3.2設(shè)置plot的風(fēng)格和樣式
11.4繪制散點(diǎn)圖plt.scatter()
11.5繪制直方圖plt.hist()
11.5.1直方圖的概念及類別
11.5.2直方圖的畫法
11.6繪制條形圖plt.bar()
11.6.1豎放條形圖:plt.bar()
11.6.2橫放條形圖:plt.barh()
11.6.3并列條形圖:plt.bar() 或
plt.barh()
11.7繪制餅圖plt.pie()
11.8繪制箱線圖plt.boxplot()
11.8.1箱線圖概念及繪制方法
11.8.2箱線圖boxplot函數(shù)用法
11.8.3npz文件的讀取
11.8.4繪圖綜合案例
11.9用Matplotlib繪制動(dòng)態(tài)圖及保存gif
格式文件
11.9.1利用交互模式繪制動(dòng)態(tài)圖
11.9.2利用FuncAnimation繪制動(dòng)
態(tài)圖
11.10Python 其他圖像功能
11.10.1圖片像素處理
11.10.2繪制3D圖
11.10.3繪制極坐標(biāo)條形圖(玫瑰圖)
習(xí)題
第12章Python與MySQL數(shù)據(jù)庫(kù)
12.1MySQL數(shù)據(jù)庫(kù)的安裝及使用
12.1.1MySQL數(shù)據(jù)庫(kù)的安裝及root密碼
修改
12.1.2MySQL數(shù)據(jù)庫(kù)的使用
12.2Python與MySQL數(shù)據(jù)庫(kù)編程
12.2.1Python建立與MySQL數(shù)據(jù)庫(kù)連接
的connection對(duì)象
12.2.2Python操縱MySQL數(shù)據(jù)庫(kù)的
cursor對(duì)象
12.2.3編程案例:將股票交易數(shù)據(jù)(Excel
格式)成批插入數(shù)據(jù)庫(kù)
習(xí)題
第13章Pandas統(tǒng)計(jì)分析基礎(chǔ)
13.1讀取數(shù)據(jù)庫(kù)中的數(shù)據(jù)及DataFrame的
數(shù)據(jù)訪問
13.1.1讀取數(shù)據(jù)庫(kù)中的數(shù)據(jù)
13.1.2訪問DataFrame中的數(shù)據(jù)
13.2Pandas讀寫文本文件(.csv)
13.2.1讀文本文件(.csv)
13.2.2寫文本文件(.csv)
13.3Pandas讀寫Excel文件
13.3.1讀Excel文件
13.3.2寫Excel文件
13.4股票數(shù)據(jù)案例:Tushare庫(kù)的使用
13.4.1Tushare 數(shù)據(jù)接口注冊(cè)
13.4.2獲取滬深股票基本信息
13.4.3獲取滬深A(yù)股某日所有股票交易
數(shù)據(jù)
13.4.4獲取某只股票自上市以來的交易
數(shù)據(jù)
習(xí)題
第14章sklearn數(shù)據(jù)建模
14.1sklearn模塊功能
14.1.1數(shù)據(jù)分析的算法
14.1.2sklearn庫(kù)的常用模塊
14.1.3加載datasets模塊中的數(shù)據(jù)集
14.1.4數(shù)據(jù)標(biāo)準(zhǔn)化的種類
14.1.5sklearn數(shù)據(jù)預(yù)處理:數(shù)據(jù)標(biāo)準(zhǔn)化、
降維
14.1.6將數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)
試集
14.1.7模型評(píng)估:sklearn.metrics
常用庫(kù)
14.1.8利用sklearn進(jìn)行數(shù)據(jù)建模的
步驟
14.2線性回歸
14.2.1多元線性回歸的基本原理
14.2.2嶺回歸與拉索回歸
14.2.3利用sklearn庫(kù)構(gòu)建線性回歸
模型
14.3logistic回歸
14.3.1logistic回歸模型
14.3.2sklearn庫(kù)構(gòu)建logistic回歸模型:
ROC曲線的應(yīng)用
14.3.3softmax邏輯回歸模型處理多分類
問題
14.4神經(jīng)網(wǎng)絡(luò)
14.4.1一般神經(jīng)元模型的組成:
M-P模型
14.4.2多層感知器神經(jīng)網(wǎng)絡(luò):
BP算法
14.4.3sklearn.neural_network庫(kù)構(gòu)建
神經(jīng)網(wǎng)絡(luò)模型
14.5支持向量機(jī)
14.5.1支持向量機(jī)的基本模型
14.5.2支持向量機(jī)的對(duì)偶問題
14.5.3非線性支持向量機(jī)與核函數(shù)
14.5.4sklearn.svm庫(kù)構(gòu)建支持向量機(jī)
模型
14.5.5SVR進(jìn)行回歸預(yù)測(cè):過擬合與股票
預(yù)測(cè)
14.6數(shù)據(jù)聚類
14.6.1聚類分析的相關(guān)概念
14.6.2基于劃分的聚類算法:
k-means
14.6.3基于層次的聚類算法:
凝聚法
14.6.4基于密度的聚類算法:
DBSCAN 算法
14.6.5sklearn.metrics模塊的聚類模型
評(píng)價(jià)指標(biāo)
習(xí)題
附錄國(guó)家統(tǒng)計(jì)局?jǐn)?shù)據(jù)查詢及下載
參考文獻(xiàn)