Python程序設計:從入門到實踐
楊亞、吳起凡
相關主題
商品描述
"Python語言是近幾年發展非常迅速的一門程序設計語言,以其簡潔優美、開發效率高、移植方便等優點,在雲計算、大數據、機器學習、人工智能、Web開發、量化金融等領域都得到了廣泛的應用。 全書共分3篇: 第1篇(第1~9章)為語言基礎,著重介紹Python語言本身,包括基本的數據類型、程序控制結構、組合數據類型、函數、文件、異常處理等內容; 第2篇(第10~14章)為常用第三方庫,重點介紹爬蟲、數據分析和計算、可視化等內容; 第3篇(第15~24章)為實踐應用,介紹Python語言在十個學科或行業中的具體應用案例。 本書適合作為高等院校計算機專業高年級本科生和研究生的教材,也可以作為低年級非計算機專業學生的教材,同時可供對Python語言感興趣的開發人員和研究人員參考。 "
目錄大綱
目錄
第1篇語 言 基 礎
第1章概述
1.1Python的歷史和現在
1.2Python的設計哲學和特點
1.3Python之禪
1.4Python未來的發展
第2章學習Python的準備
2.1程序的下載和安裝
2.2Python開發環境
2.2.1基本開發環境
2.2.2PyCharm集成開發環境
2.3Python編碼規範
2.3.1Python風格規範
2.3.2Python語言規範
2.4語法說明
第3章數據類型和表達式
3.1標識符、變量及其賦值
3.1.1標識符
3.1.2變量及其賦值
3.1.3常量
3.2基本數據類型
3.2.1布爾型
3.2.2數值類型
3.2.3字符串
3.2.4字符串的格式化
3.2.5空值
3.2.6常用數據類型的轉換
3.3運算符及表達式
3.3.1算術運算符
3.3.2邏輯運算符
3.3.3比較運算符
3.3.4賦值運算符
3.3.5運算符的優先級
3.4基本輸入/輸出
3.4.1input()
3.4.2print()
第4章程序控制結構
4.1選擇結構
4.1.1if語句
4.1.2ifelse語句
4.1.3ifelifelse語句
4.1.4選擇結構的嵌套
4.2循環結構
4.2.1while循環
4.2.2for循環
4.2.3循環的輔助控制
第5章組合數據類型
5.1序列
5.1.1序列概述
5.1.2列表
5.1.3元組
5.1.4字節序列
5.2集合
5.2.1集合的定義和創建
5.2.2集合的運算
5.2.3集合的內置函數
5.2.4可變集合獨有的方法
5.3字典
5.3.1映射類型
5.3.2字典概述
5.4綜合案例
5.4.1方法一: 使用列表存儲數據
5.4.2方法二: 使用字典存儲數據
5.4.3小結
第6章函數
6.1函數的定義與調用
6.1.1函數的定義
6.1.2函數的調用
6.1.3前向引用
6.2函數的參數及返回值
6.2.1參數值的傳遞與修改
6.2.2參數的按位置傳遞與按名稱傳遞
6.2.3參數的默認值
6.2.4可變數量參數
6.2.5函數的返回值
6.3變量的作用域
6.3.1全局變量與局部變量
6.3.2標識符解析的LEGB法則
6.4函數的遞歸調用
6.5函數式編程
6.5.1函數式編程
6.5.2lambda表達式
第7章文件
7.1文件和流
7.2文件對象
7.2.1with語句和上下文管理協議
7.2.2打開文件
7.2.3關閉文件
7.3文件的基本操作
7.3.1文本文件的讀寫
7.3.2二進制文件的讀寫
7.4隨機文件的讀寫
7.5其他文件操作
7.5.1CSV文件格式的讀取和寫入
7.5.2利用os模塊進行文件訪問
7.6對象序列化
7.6.1使用pickle模塊將對象序列化
7.6.2使用pickle模塊將對象反序列化
7.7輸入輸出重定向
第8章面向對象程序設計
8.1面向對象程序設計概述
8.1.1面向對象
8.1.2Python中的面向對象
8.2類和實例
8.2.1類的定義
8.2.2實例化對象
8.3屬性
8.3.1私有屬性與公有屬性
8.3.2數據屬性
8.3.3方法
8.3.4內置特殊方法
8.4繼承與多態性
8.4.1繼承
8.4.2多態性與運算符重載
8.5設計實例
第9章異常處理
9.1異常和異常處理語句
9.1.1異常
9.1.2異常處理
9.1.3處理多個異常
9.1.4else子句
9.1.5finally子句
9.2拋出異常的方法
9.3自定義異常類型
第2篇常用的第三方庫
第10章數據獲取(爬蟲)
10.1requests
10.1.1下載、安裝和導入
10.1.2requests的基本方法
10.1.3get方法
10.1.4錯誤和異常
10.1.5post方法
10.1.6其他幾種方法
10.2scrapy
10.2.1scrapy的安裝
10.2.2scrapy的主要模塊
10.2.3scrapy的工作過程
10.2.4使用scrapy爬取靜態頁面數據
10.2.5使用scrapy爬取動態頁面數據
10.2.6小結
第11章數據計算和分析
11.1NumPy
11.1.1NumPy的下載、安裝和導入
11.1.2NumPy支持的數據類型
11.1.3創建數組
11.1.4數組的屬性
11.1.5數組的輸出
11.1.6數組的運算
11.1.7數組的索引
11.1.8數組形狀的調整
11.1.9統計特征計算
11.1.10參考文檔
11.2Pandas
11.2.1Pandas的下載、安裝和導入
11.2.2Series的創建和基本操作
11.2.3Series的常用函數
11.2.4Series的運算
11.2.5DataFrame的創建
11.2.6DataFrame的使用
11.2.7DataFrame打開CVS文件
11.2.8其他常用函數
11.3SciPy
11.3.1物理和數學常數
11.3.2插值interpolate
11.3.3圖像處理
第12章數據可視化
12.1matplotlib工具包
12.1.1matplotlib下載、安裝和導入
12.1.2matplotlib的基本框架
12.1.3使用matplotlib繪圖的輔助性函數
12.1.4直方圖
12.1.5線圖
12.1.6散點圖
12.1.7餅圖
12.1.8小結
12.2pyecharts工具包
12.2.1pyecharts下載、安裝和導入
12.2.2熱力圖
第13章大數據平臺
13.1PySpark
13.1.1在PyCharm中安裝PySpark
13.1.2安裝Java SE Development Kit
13.1.3安裝Hadoop
13.1.4驗證安裝環境是否成功
13.1.5PySpark的常用公共類
13.1.6PySpark編程概述
13.1.7RDD的基本操作
13.2RDD常用的轉換和操作函數
第14章中文分詞與詞雲
14.1jieba庫
14.1.1中文分詞簡介
14.1.2jieba簡介
14.1.3案例高頻詞提取
14.2wordcloud庫
14.2.1wordcloud庫簡介
14.2.2案例1基本用法
14.2.3案例2使用背景圖像(官網案例)
14.2.4案例3中文詞雲與使用模板圖片顏色
第3篇實 踐 應 用
第15章電力系統用電量預測(能源)
15.1案例背景
15.2數據準備
15.2.1數據說明
15.2.2初窺數據
15.2.3日期字段格式轉換
15.2.4數據匯總聚合
15.2.5添加測試數據
15.2.6拼接成總體數據
15.3特征工程
15.3.1構造和時間相關的強特征
15.3.2添加周末特征信息
15.3.3添加一個月4周的周信息
15.3.4添加上中下旬信息
15.3.5添加上半月下半月信息
15.3.6手動填充節日信息
15.4數據建模
15.4.1添加獨熱向量編碼/onehot encoding
15.4.2樹狀模型建模: 分離訓練集和測試集
15.4.3建模與調參
15.4.4進行結果預測
第16章電影廣告推薦系統(電子商務)
16.1案例背景
16.1.1電子商務和推薦系統
16.1.2長尾效應
16.1.3精確性和多樣性
16.2案例目標
16.3協同過濾算法簡介
16.3.1基於用戶的協同過濾算法
16.3.2基於項目的協同過濾算法
16.3.3與基於內容推薦的區別
16.4數據集初探
16.5搭建基於協同過濾算法的推薦系統
16.6小結
第17章金融風控評分卡模型應用(金融)
17.1案例介紹
17.2背景知識
17.2.1數據預處理
17.2.2變量篩選
17.2.3構建邏輯回歸模型
17.2.4模型評估
17.2.5轉化為評分卡
17.3數據介紹
17.4數據探索
17.4.1查看數據概況
17.4.2定義不同類型的變量
17.4.3探索性分析
17.5數據預處理
17.5.1變量分箱
17.5.2WOE編碼並計算變量IV值
17.6構建lr模型
17.7模型評估
17.8轉化為評分卡
17.9小結
第18章基於社交網絡評論的民眾情感分析(社會科學)
18.1案例背景與目標
18.2Word2Vec簡介
18.3情感分析模型構建
18.3.1訓練Word2Vec模型
18.3.2訓練情感分類模型
18.3.3分析人工智能數據並進行可視化
18.4小結
第19章霧霾環境大數據分析(環境科學)
19.1案例背景與目標
19.2分析方法與過程
19.2.1分析數據文件
19.2.2明確數據應用場景
19.3數據預處理
19.3.1過濾刪除數據集中的臟數據
19.3.2選擇本案例中需要使用的相關列數據
19.4模型構建
19.4.1統計月平均氣溫
19.4.2統計每日空氣質量
19.5可視化展現
19.6小結
第20章抓取網站房源信息並進行可視化分析(房地產)
20.1案例背景與目標
20.2分析方法與過程
20.3數據爬取
20.3.1準備工作
20.3.2抓取列表頁
20.3.3頁面解析
20.3.4數據並整理到數據表中
20.4數據清洗及預處理
20.5結果可視化
20.5.1各社區房屋數量統計
20.5.2各社區房屋每平方米平均價格統計
20.5.3戶型數量分布信息統計
20.5.4房屋面積統計
20.5.5熱度分布統計(看房次數/發布日期)
20.5.6房屋建造時間對房屋單價的影響曲線
20.5.7特征相關性的熱力圖分析
20.5.8利用詞雲進行詞頻統計
20.6小結
第21章利用PySpark進行網站海量日誌分析(大數據計算)
21.1案例背景
21.2分析方法與過程
21.2.1分析了解Apache Web服務器日誌文件
21.2.2明確數據應用場景
21.3數據預處理
21.4日誌深入解析和可視化
21.4.1最高頻的正確響應和錯誤響應endpoints
21.4.2對每一天不同的host做可視化
21.4.3對返回404的結果做分析
21.5小結
第22章手寫數字識別(人工智能)
22.1背景知識和目標
22.2神經網絡模型簡介
22.2.1神經元
22.2.2神經網絡
22.2.3所謂的學習
22.3分析方法與過程
22.4數據初探
22.5神經網絡模型搭建
22.6上機實驗
22.7小結
第23章奔馳快速檢測項目(工業制造)
23.1案例背景與目標
23.2特征工程
23.3分析方法與過程
23.4模型構建與重要度分析
23.5xgboost方法
23.6RandomForest方法
23.7小結
第24章美國農藥使用分析(農業科學)
24.1案例背景與目標
24.2探索數據
24.2.1數據的導入與合並
24.2.2考察缺失值
24.2.3數據的自查
24.3數據統計與可視化分析
24.4小結
參考文獻







