
0人評分過此書
-涵蓋Python3.0至3.9實用特性
-運用TypeHints增加程式可讀性與穩固性
-深入常用模組之應用與實作
-介紹asyncio模組與非同步設計
-包含裝飾器、meta類別實作等進階主題
‧作者自PyConTaiwan2013以來實行多次Python入門課程,匯整學員在課程中遇到的觀念、實作、應用等問題之經驗集成。
‧基於Python3.9而撰寫,涵蓋Python3.0至3.9的實用特性。
‧直接在範例上融合TypeHints,增加程式碼可讀性,並結合mypy進行型態檢查。
‧涵蓋abc、collection.abc、datetime、urllib、pdb、unittest、timeit、threading、subprocess、multiprocessing、asyncio等標準程式庫之實用模組。
‧介紹async、await、asyncfor、asyncwith等語法,並探討如何運用asyncio模組進行非同步程式設計。
‧對於描述器、裝飾器、meta類別實作等進階主題詳細探討,並以標準程式庫中@staticmethod、@abstractmethod等功能之模仿,作為實際之應用對象。
‧建議動手實作的範例提供Lab檔案,更能掌握練習重點。
-運用TypeHints增加程式可讀性與穩固性
-深入常用模組之應用與實作
-介紹asyncio模組與非同步設計
-包含裝飾器、meta類別實作等進階主題
‧作者自PyConTaiwan2013以來實行多次Python入門課程,匯整學員在課程中遇到的觀念、實作、應用等問題之經驗集成。
‧基於Python3.9而撰寫,涵蓋Python3.0至3.9的實用特性。
‧直接在範例上融合TypeHints,增加程式碼可讀性,並結合mypy進行型態檢查。
‧涵蓋abc、collection.abc、datetime、urllib、pdb、unittest、timeit、threading、subprocess、multiprocessing、asyncio等標準程式庫之實用模組。
‧介紹async、await、asyncfor、asyncwith等語法,並探討如何運用asyncio模組進行非同步程式設計。
‧對於描述器、裝飾器、meta類別實作等進階主題詳細探討,並以標準程式庫中@staticmethod、@abstractmethod等功能之模仿,作為實際之應用對象。
‧建議動手實作的範例提供Lab檔案,更能掌握練習重點。
-
1 Python 起步走
-
1.1 認識Python
-
1.1.1 Python 3 的誕生
-
1.1.2 從Python 3.0 到3.7
-
1.1.3 初識社群資源
-
-
1.2 建立Python 環境
-
1.2.1 Python 的實作
-
1.2.2 下載與安裝Python 3.9
-
1.2.3 認識安裝內容
-
-
1.3 重點複習
-
-
2 從REPL 到IDE
-
2.1 從 'Hello World' 開始
-
2.1.1 使用REPL
-
2.1.2 撰寫Python 原始碼
-
2.1.3 哈囉!世界!
-
-
2.2 初識模組與套件
-
2.2.1 簡介模組
-
2.2.2 設定PYTHONPATH
-
2.2.3 使用套件管理模組
-
2.2.4 使用import as 與from import
-
-
2.3 使用IDE
-
2.3.1 下載、安裝PyCharm
-
2.3.2 IDE 專案管理基礎
-
-
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.2.7 *與**拆解運算子
-
-
3.3 重點複習
-
3.4 課後練習
-
-
4 流程語法與函式
-
4.1 流程語法
-
4.1.1 if 分支判斷
-
4.1.2 while 迴圈
-
4.1.3 for in 迭代
-
4.1.4 pass、break、continue
-
4.1.5 for Comprehension
-
-
4.2 定義函式
-
4.2.1 使用def 定義函式
-
4.2.2 參數與引數
-
4.2.3 一級函式的運用
-
4.2.4 lambda 運算式
-
4.2.5 初探變數範圍
-
4.2.6 yield 產生器
-
-
4.3 初探型態提示
-
4.3.1 為何需要型態提示?
-
4.3.2 型態提示語法
-
4.3.3 使用mypy 檢查型態
-
4.3.4 型態提示的時機
-
-
4.4 重點複習
-
4.5 課後練習
-
-
5 從模組到類別
-
5.1 模組管理
-
5.1.1 用模組建立抽象層
-
5.1.2 管理模組名稱
-
5.1.3 設定PTH 檔案
-
-
5.2 初識物件導向
-
5.2.1 定義型態
-
5.2.2 定義方法
-
5.2.3 定義內部屬性
-
5.2.4 定義外部屬性
-
-
5.3 類別語法細節
-
5.3.1 綁定與未綁定方法
-
5.3.2 靜態方法與類別方法
-
5.3.3 屬性名稱空間
-
5.3.4 定義運算子
-
5.3.5 __new__()、__init__()與__del__()
-
-
5.4 重點複習
-
5.5 課後練習
-
-
6 類別的繼承
-
6.1 何謂繼承?
-
6.1.1 繼承共同行為
-
6.1.2 鴨子定型
-
6.1.3 重新定義方法
-
6.1.4 定義抽象方法
-
-
6.2 繼承語法細節
-
6.2.1 初識object 與super()
-
6.2.2 Rich comparison 方法
-
6.2.3 使用enum 列舉
-
6.2.4 多重繼承
-
6.2.5 建立ABC
-
6.2.6 使用final
-
6.2.7 探討super()
-
-
6.3 文件與套件資源
-
6.3.1 DocStrings
-
6.3.2 查詢官方文件
-
6.3.3 PyPI 與pip
-
-
6.4 泛型入門
-
6.4.1 定義泛型函式
-
6.4.2 定義泛型類別
-
-
6.5 重點複習
-
6.6 課後練習
-
-
7 例外處理
-
7.1 語法與繼承架構
-
7.1.1 使用try、except
-
7.1.2 例外繼承架構
-
7.1.3 引發(raise)例外
-
7.1.4 Python 例外風格
-
7.1.5 認識堆疊追蹤
-
7.1.6 提出警告訊息
-
-
7.2 例外與資源管理
-
7.2.1 使用else、finally
-
7.2.2 使用with as
-
7.2.3 實作情境管理器
-
-
7.3 重點複習
-
7.4 課後練習
-
-
8 open() 與io 模組
-
8.1 使用open()函式
-
8.1.1 file 與mode 參數
-
8.1.2 buffering、encoding、errors、newline 參數
-
8.1.3 stdin、stdout、stderr
-
-
8.2 進階檔案處理
-
8.2.1 認識檔案描述器
-
8.2.2 認識io 模組
-
-
8.3 重點複習
-
8.4 課後練習
-
-
9 資料結構
-
9.1 hashable、iterable 與orderable
-
9.1.1 hashable 協定
-
9.1.2 使用dataclass
-
9.1.3 iterable 協定
-
9.1.4 orderable 協定
-
-
9.2 進階群集處理
-
9.2.1 認識群集架構
-
9.2.2 使用collections 模組
-
9.2.3 __getitem__()、__setitem__()、__delitem__()
-
9.2.4 使用collection.abc 模組
-
9.2.5 UserList、UserDict、UserString 類別
-
-
9.3 重點複習
-
9.4 課後練習
-
-
10 資料永續與交換
-
10.1 物件序列化
-
10.1.1 使用pickle 模組
-
10.1.2 使用shelve 模組
-
-
10.2 資料庫處理
-
10.2.1 認識DB-API 2.0
-
10.2.2 使用sqlite3 模組
-
10.2.3 參數化SQL 語句
-
10.2.4 簡介交易
-
-
10.3 資料交換格式
-
10.3.1 CSV
-
10.3.2 JSON
-
10.3.3 XML
-
-
10.4 重點複習
-
10.5 課後練習
-
-
11 常用內建模組
-
11.1 日期與時間
-
11.1.1 時間的度量
-
11.1.2 年曆與時區簡介
-
11.1.3 使用time 模組
-
11.1.4 使用datetime 模組
-
-
11.2 日誌
-
11.2.1 簡介Logger
-
11.2.2 使用Handler、Formatter 與Filter
-
11.2.3 使用logging.config
-
-
11.3 規則表示式
-
11.3.1 簡介規則表示式
-
11.3.2 Pattern 與Match 物件
-
-
11.4 檔案與目錄
-
11.4.1 使用os 模組
-
11.4.2 使用os.path 模組
-
11.4.3 使用glob 模組
-
-
11.5 URL 處理
-
11.5.1 淺談URL 與HTTP
-
11.5.2 使用urllib.request
-
11.5.3 使用urllib.parse
-
11.5.4 使用Request
-
-
11.6 重點複習
-
11.7 課後練習
-
-
12 除錯、測試與效能
-
12.1 除錯
-
12.1.1 認識Debugger
-
12.1.2 使用pdb 模組
-
-
12.2 測試
-
12.2.1 使用assert 斷言
-
12.2.2 撰寫doctest
-
12.2.3 使用unittest 單元測試
-
-
12.3 效能
-
12.3.1 timeit 模組
-
12.3.2 使用cProfile(profile)
-
-
12.4 重點複習
-
12.5 課後練習
-
-
13 並行、平行與非同步
-
13.1 並行
-
13.1.1 簡介執行緒
-
13.1.2 執行緒的啟動至停止
-
13.1.3 競速、鎖定、死結
-
13.1.4 等待與通知
-
-
13.2 平行
-
13.2.1 使用subprocess 模組
-
13.2.2 使用multiprocessing 模組
-
-
13.3 非同步
-
13.3.1 使用concurrent.futures 模組
-
13.3.2 Future 與非同步
-
13.3.3 略談yield from 與非同步
-
13.3.4 Asyncio 與並行
-
13.3.5 async、await 與非同步
-
13.3.6 非同步產生器與async for
-
13.3.7 情境管理器與async with
-
-
13.4 重點複習
-
13.5 課後練習
-
-
14 進階主題
-
14.1 屬性控制
-
14.1.1 描述器
-
14.1.2 定義__slots__
-
14.1.3 __getattribute__()、__getattr__()、__setattr__()、__delattr__()
-
-
14.2 裝飾器
-
14.2.1 函式裝飾器
-
14.2.2 類別裝飾器
-
14.2.3 方法裝飾器
-
14.2.4 使用類別實作裝飾器
-
-
14.3 Meta 類別
-
14.3.1 認識type 類別
-
14.3.2 指定metaclass
-
14.3.3 __abstractmethods__
-
-
14.4 相對匯入
-
14.5 型態提示進階
-
14.5.1 型態邊界
-
14.5.2 共變性
-
14.5.3 逆變性
-
14.5.4 結構型態
-
14.5.5 字面值型態
-
-
14.6 重點複習
-
14.7 課後練習
-
-
A venv
-
A.1 建立虛擬環境
-
-
B Django 簡介
-
B.1 Django 框架入門
-
B.1.1 Django 起步走
-
B.1.2 建立 App 與模型
-
B.1.3 ORM 操作
-
B.1.4 撰寫第一個View
-
B.1.5 使用模版系統
-
B.1.6 建立簡易表單
-
-
-
C Beautiful Soup、requests 簡介
-
C.1 Beautiful Soup 入門
-
C.1.1 Beautiful Soup 起步走
-
C.1.2 find_all()與find()
-
C.1.3 走訪頁面結構
-
-
C.2 requests 入門
-
C.2.1 requests 起步走
-
C.2.2 Cookie 與Session
-
-
- 出版地 : 臺灣
- 語言 : 繁體中文
評分與評論
請登入後再留言與評分