身處在資料無所不在的世代,大量程式應用、科學運算的需求應運而生,Python 就是目前處理大數據的最強工具。
從基礎語法到資料科學應用,培養大數據分析的關鍵能力
大家都想學 Python,不過很多人完全沒有程式基礎,或者曾經半途而廢。本書以淺顯易懂的筆觸與大量的實例演練,引導你在動手寫程式的過程中學會Python的語法和程式邏輯,跨越初學者經常遇到的障礙,進入資料科學、機器學習與大數據分析的領域,你會發現原來自己也能成為程式高手!
★ 清楚明瞭的語法教學,第一次寫程式就上手!
★ 豐富滿點的實作範例,自己動手反覆練習最有感!
★ 無縫接軌四大套件 NumPy、matplotlib、SciPy、pandas,資料處理、分析、運算,快人一等!
★ 紮穩資料科學基礎,銜接機器學習最強套件-scikit-learn
本書特色
初學Python的最佳教材,第一次寫程式就上手!
★最易學習★
沒學過程式設計或學到一半就放棄的都沒關係,本書從基礎的語法和程式邏輯開始,以淺顯文字及簡明程式,帶你快速學會Python在不同領域的應用。
★豐富範例★
本書提供豐富實用的範例,搭配各小節的隨堂練習和章末的學習評量,立即驗證學習成果,自學或課堂教學都適合。
★最強應用★
本書內容包含下列幾個資料科學與機器學習最強套件,有了這些基礎,日後你就可以進一步往資料科學、大數據分析、人工智慧等專業的領域發展:
◇NumPy → 資料運算
◇matplotlib → 資料視覺化
◇SciPy → 科學計算
◇pandas → 資料處理與分析
◇scikit-learn → 機器學習
目錄
第 1 章 開始撰寫 Python 程式
1-1 認識 Python
1-2 使用 Anaconda 開發環境
1-2-1 安裝 Anaconda
1-2-3 使用 Spyder
1-3 使用 Google Colab 雲端開發環境
1-4 Python 程式碼撰寫風格
1-5 程式設計錯誤
第 2 章 型別、變數與運算子
2-1 型別
2-1-1 數值型別 (int、float、complex、bool)
2-1-2 字串型別 (str)
2-1-3 list (串列)、tuple (序對)、set (集合) 與dict (字典)
2-2 變數
2-3 常數
2-4 運算子
2-5 輸出
2-6 輸入
第 3 章 數值與字串處理
3-1 數值處理函式
3-1-1 內建數值函式
3-1-2 數學函式
3-1-3 亂數函式
3-2 字串與字元
3-2-1 ASCII 與 Unicode
3-2-2 跳脫序列
3-2-3 內建字串函式
3-2-4 連接運算子
3-2-5 重複運算子
3-2-6 比較運算子
3-2-7 in 與 not in 運算子
3-2-8 索引與切片運算子
3-3 字串處理方法
3-3-1 字串轉換方法
3-3-2 字串測試方法
3-3-3 搜尋子字串方法
3-3-4 刪除指定的字元或空白方法
3-3-5 格式化方法
3-4 數值與字串格式化
3-5 f-string 格式化字串實字
第 4 章 流程控制
4-1 認識流程控制
4-2 if 3
4-3 for 14
4-4 while
4-5 break 與 continue 敘述
第 5 章 函式
5-1 認識函式
5-2 定義函式
5-3 呼叫函式
5-4 函式的參數
5-4-1 參數傳遞方式
5-4-2 關鍵字引數
5-4-3 預設引數值
5-4-4 任意引數串列
5-5 函式的傳回值
5-6 全域變數與區域變數
5-7 遞迴函式
5-8 lambda運算式
5-9 日期時間函式
5-9-1 time 模組
5-9-2 calendar 模組
第 6 章 list、tuple、set 與 dict
6-1 list (串列)
6-1-1 建立串列
6-1-2 內建函式
6-1-3 連接運算子
6-1-4 重複運算子
6-1-5 比較運算子
6-1-6 in 與 not in 運算子
6-1-7 索引與切片運算子
6-1-8 串列處理方法
6-1-9 串列推導式
6-1-10 del 敘述
6-1-11 二維串列
6-2 tuple (序對)
6-2-1 建立序對
6-2-2 序對的運算
6-3 set (集合)
6-3-1 建立集合
6-3-2 內建函式
6-3-3 運算子
6-3-4 集合處理方法
6-4 dict (字典)
6-4-1 建立字典
6-4-2 取得、新增、變更或刪除鍵:值對
6-4-3 內建函式
6-4-4 運算子
6-4-5 字典處理方法
第 7 章 檔案存取
7-1 認識檔案路徑
7-2 寫入檔案
7-2-1 建立檔案物件
7-2-2 將資料寫入檔案
7-3 讀取檔案
7-3-1 使用 read() 方法從檔案讀取資料
7-3-2 使用 readline() 方法從檔案讀取資料
7-3-3 使用 readlines() 方法從檔案讀取資料
7-4 with 敘述
7-5 管理檔案與資料夾
第 8 章 例外處理
8-1 認識例外
8-2 try…except
第 9 章 物件導向
9-1 認識物件導向
9-2 使用類別與物件
9-2-1 定義類別
9-2-2 建立物件
9-2-3 __init__() 方法
9-2-4 匿名物件
9-2-5 私有成員 (私有屬性與私有方法)
9-3 繼承
9-3-1 定義子類別
9-3-2 覆蓋繼承自父類別的方法
9-3-3 呼叫父類別內被覆蓋的方法
9-3-4 isinstance() 與 issubclass() 函式
9-4 多型
第 10 章 模組與套件
10-1 模組
10-2 套件
10-3 第三方套件
10-3-1 透過 pip 程式安裝第三方套件
10-3-2 透過 PyPI 網站安裝第三方套件
第 11 章 使用 pillow 與 qrcode 套件
11-1 使用 pillow 處理圖片
11-1-1 顯示圖片
11-1-2 將圖片轉換成黑白或灰階
11-1-4 濾鏡效果
11-1-5 在圖片上繪製文字
11-1-6 建立空白圖片
11-1-7 變更圖片的大小
11-2 使用 qrcode 產生 QR code 圖片
第 12 章 使用 NumPy 進行資料運算
12-1 認識 NumPy
12-2 NumPy 的資料型別
12-3 一維陣列運算
12-3-1 ndarray 型別的屬性
12-3-2 建立一維陣列
12-3-3 一維陣列的基本操作
12-3-4 向量運算 (內積、叉積、外積)
12-4 二維陣列運算
12-4-1 建立二維陣列
12-4-2 二維陣列的基本操作
12-4-3 處理陣列的形狀
12-4-4 矩陣運算 (轉置、相加、相乘)
12-5 通用函式
12-6 廣播
12-7 視點 (view) 與複本 (copy)
12-8 數學函式
12-9 隨機取樣函式
12-10 統計函式
12-11 檔案資料輸入/輸出
第 13 章 使用 matplotlib 繪製圖表
13-1 認識 matplotlib
13-2 繪製線條或標記
13-2-1 設定線條或標記樣式
13-2-2 設定座標軸的範圍、標籤與刻度
13-2-3 設定標題
13-2-4 加入文字
13-2-5 放置圖例
13-2-6 建立新圖表
13-2-7 多張圖表
13-3 繪製長條圖
13-4 繪製直方圖
13-5 繪製圓形圖
13-6 繪製散佈圖
第 14 章 使用 SciPy 進行科學運算
14-1 認識 SciPy