這是所有 Python 修煉者的內建功能完整查詢手冊。每個語法條目都附有獨立的深度教學文章,點擊連結即可進入修煉。這張目錄不是用來「從頭讀到尾」的,而是你遇到問題時的快速索引——當你不確定該用哪個語法,回到這頁找到對應分類即可。
📌 本頁導覽
第一部分:基礎語法與核心概念
這是所有 Python 修煉者必須打好的地基。每個語法條目都附有獨立的深度教學文章,點擊連結進入修煉。
🧱 變數與資料型別
Python 的資料世界從這裡起步。你將學會用 = 賦值給變數、認識 int、float、bool、str 四大基本型別,以及 Python 動態型別的靈活特性——變數不需預先宣告型別,type() 函數隨時幫你確認資料身份。
| 語法 | 白話說明 | 深度教學 |
|---|---|---|
變數賦值 = |
把資料貼上名字標籤 | Python 變數賦值:用 = 指派資料與命名規則 |
int 整數 |
沒有小數點的數字 | Python int 整數與 float 浮點數完整教學 |
float 浮點數 |
帶小數點的數字 | Python int 整數與 float 浮點數完整教學 |
bool 布林值 |
True / False 邏輯判斷 | Python bool 布林值:True 與 False 邏輯基礎 |
str 字串 |
文字序列,支援切片 | Python 字串基礎:建立、索引與切片操作 |
f-string / .format() |
字串中直接插入變數 | Python f-string 與 format:字串格式化完整教學 |
📦 資料結構
當資料不只一筆,就需要容器來承裝。這個單元涵蓋 List 串列的動態增刪、Dictionary 字典的 Key-Value 查詢、Tuple 元組的不可變特性,以及 Set 集合的自動去重──四種結構各有最佳適用場景,選對容器讓程式效率倍增。
| 語法 | 白話說明 | 深度教學 |
|---|---|---|
list 串列 |
有序可變的置物櫃 | Python List 串列:append、pop、extend 方法全攻略 |
dict 字典 |
帶標籤的收納箱 Key-Value | Python Dictionary 字典:Key-Value 建立與查詢操作 |
tuple 元組 |
不可變的資料膠囊 | Python Tuple 元組:不可變序列的特性與應用 |
set 集合 |
自動去重的無序容器 | Python Set 集合:自動去重與無序集合實戰 |
⚙️ 運算子
運算子是 Python 程式邏輯的基礎語彙。從加減乘除與 % 取餘數、** 次方等算術運算,到 ==、!=、>、< 等比較運算,再到 and、or、not 的邏輯組合,掌握這三類運算子,才能精準表達程式中的每一個判斷條件。
| 語法 | 白話說明 | 深度教學 |
|---|---|---|
+ - * / // ** % |
加減乘除、取整數商、次方、取餘數 | Python 數學運算子:加減乘除、% 取餘數與 ** 次方 |
== != > < >= <= |
比較兩個值的大小或相等 | Python 比較運算子:== != > < >= <= 全解析 |
and or not |
組合多個條件的邏輯判斷 | Python 邏輯運算子:and、or、not 條件組合 |
🧱 基礎開發語法
寫出可讀、可維護的程式碼,需要從基本語法規範做起。本單元說明 Python 以縮排定義程式區塊的獨特設計、# 單行註解與 Docstring 文件字串的用途,以及 f-string 與 format() 字串格式化的現代寫法,讓每一行程式碼都清晰表達意圖。
| 語法 | 白話說明 | 深度教學 |
|---|---|---|
縮排 (Indentation) |
用空白定義程式碼區塊,縮排錯誤會產生 IndentationError | Python 縮排規則:用空白定義程式碼區塊 |
# 註解 / """ Docstring |
說明程式碼或產生函數文件 | Python 註解教學:# 單行註解與 Docstring 文件字串 |
variable: type -> return_type |
幫助 IDE 檢查型別錯誤的語法標注(型別提示) | 📦 礦石待採 |
global 關鍵字 |
在函數內宣告使用全域變數 | 📦 礦石待採 |
if __name__ == "__main__": |
判斷腳本是被直接執行還是被匯入 | 📦 礦石待採 |
🚦 流程控制
程式不會永遠從頭跑到尾,流程控制決定「什麼情況下執行哪些程式碼」。if-elif-else 條件分支讓程式學會判斷,for 迴圈搭配 range() 逐一處理序列,while 迴圈加上 break 靈活跳出,串列生成式則以一行優雅取代多行迴圈。
| 語法 | 白話說明 | 深度教學 |
|---|---|---|
if / elif / else |
遇到岔路時的條件決策 | Python if-elif-else:條件判斷與巢狀分支教學 |
for 迴圈 |
走訪序列或執行固定次數 | Python for 迴圈:序列迭代與 range() 實戰 |
while 迴圈 |
條件為 True 就持續執行 | Python while 迴圈:條件重複執行與 break 跳出 |
break / continue / pass |
中斷迴圈、跳過本次、什麼都不做 | Python while 迴圈:條件重複執行與 break 跳出 |
| 串列生成式 (List Comprehension) | 一行取代 for 迴圈建立新串列 | Python 串列生成式:一行取代 for 迴圈的進階語法 |
🏭 函數
函數是程式碼的封裝單位,讓邏輯可以重複使用而無需重複撰寫。本單元從 def 定義函數、設計參數與 return 回傳值,進階到預設值、*args、**kwargs 彈性參數,以及 lambda 匿名函數搭配 map()、filter() 的函數式應用,幫你打造乾淨、模組化的程式架構。
| 語法 | 白話說明 | 深度教學 |
|---|---|---|
print() input() len() type() range() |
Python 預設工具箱核心函數 | Python 內建函數:print、input、len、type 核心教學 |
enumerate() zip() min() max() round() abs() |
進階內建函數:枚舉、合併、統計 | Python 內建函數:print、input、len、type 核心教學 |
def / return |
自訂函數的基礎骨架 | Python 自訂函數:def、參數與 return 回傳值設計 |
預設參數 / *args / **kwargs |
讓函數接收彈性數量的輸入 | Python 預設值與 args、kwargs 彈性參數教學 |
lambda / map() / filter() |
匿名函數與函數式操作 | Python Lambda、map 與 filter:匿名函數入門 |
🏛️ 物件導向(OOP)
物件導向是組織大型程式的核心思維,把資料與行為封裝成「物件」。你將學會以 class 定義類別、用 __init__ 初始化屬性、透過繼承擴展功能,以及封裝與多型的設計原則——這是從寫「能跑的程式碼」邁向「可維護的程式架構」的關鍵一步。
| 語法 | 白話說明 | 深度教學 |
|---|---|---|
class / self / __init__ |
定義物件的藍圖與初始化設定 | 📦 礦石待採 |
| 繼承 (Inheritance) / 多型 (Polymorphism) | 讓子類別沿用並擴充父類別能力 | 📦 礦石待採 |
__str__ __len__ __del__ 魔術方法 |
讓物件支援內建語法操作的特殊方法 | 📦 礦石待採 |
🛡️ 錯誤處理與檔案操作
真實世界的程式隨時可能遇到例外狀況。try-except-finally 讓你優雅攔截錯誤而不崩潰,raise 主動拋出自訂例外;檔案操作則涵蓋 open() 的 r、w、a 模式讀寫純文字,以及 CSV 結構化資料的讀取與寫入,為資料處理與量化策略的落地應用奠定基礎。
| 語法 | 白話說明 | 深度教學 |
|---|---|---|
try / except / else / finally / raise |
捕捉錯誤讓程式不崩潰 | Python 例外處理:try、except、finally 與 raise |
TypeError IndexError KeyError FileNotFoundError OSError NotImplementedError |
常見錯誤類型對照 | Python 例外處理:try、except、finally 與 raise |
open() read() readlines() write() close() with |
讀寫文字檔的核心操作 | Python 檔案讀寫:open()、r、w、a 模式與 CSV 操作 |
'r' 'w' 'a' 'rb' 'wb' 模式 |
讀取、寫入、附加、二進位圖片/PDF 操作 | Python 檔案讀寫:open()、r、w、a 模式與 CSV 操作 |
第二部分:內建模組 📦
這些模組 Python 已內建,只需 import 即可使用,不需要安裝。
| 模組 | 核心用途 | 深度教學 |
|---|---|---|
random | 隨機數、洗牌:randint choice shuffle | 📦 礦石待採 |
math | 數學函數:pi floor ceil log sin degrees | 📦 礦石待採 |
os | 作業系統互動:getcwd listdir walk unlink rmdir | 📦 礦石待採 |
shutil | 高階檔案操作:move rmtree unpack_archive | 📦 礦石待採 |
datetime | 日期與時間處理 | 📦 礦石待採 |
collections | 特殊容器:Counter defaultdict namedtuple | 📦 礦石待採 |
csv | 讀寫 .csv 試算表:reader writer | 📦 礦石待採 |
json | 處理 JSON 格式:dump load update | 📦 礦石待採 |
re | 正規表達式:search findall finditer compile group | 📦 礦石待採 |
string | 字串常數:ascii_lowercase digits 等 | 📦 礦石待採 |
turtle | 海龜繪圖,適合基礎圖形練習 | 📦 礦石待採 |
tkinter | 圖形化介面 GUI:Label Button Entry Canvas messagebox | 📦 礦石待採 |
unittest | 單元測試框架:TestCase assertEqual | 📦 礦石待採 |
smtplib | 用 SMTP 協定發送電子郵件 | 📦 礦石待採 |
imaplib + email | 連接 IMAP 接收並解析電子郵件 | 📦 礦石待採 |
timeit | 計算程式執行時間 | 📦 礦石待採 |
pdb | Python 內建除錯器(Debugger) | 📦 礦石待採 |
第三部分:第三方套件 🔥
這些套件需透過 pip install 套件名稱 安裝後才能使用。
🕸️ 網頁爬蟲與瀏覽器自動化
| 套件 | 核心用途 | 深度教學 |
|---|---|---|
requests | 發送 HTTP 請求抓取網頁或串接 API | 📦 礦石待採 |
bs4 (Beautiful Soup 4) | 解析 HTML 結構,提取所需資料 | 📦 礦石待採 |
lxml | 配合 Beautiful Soup 使用的解析器底層 | 📦 礦石待採 |
selenium | 驅動瀏覽器進行自動化操作 | 📦 礦石待採 |
📊 資料科學與視覺化
| 套件 | 核心用途 | 深度教學 |
|---|---|---|
pandas | 強大的資料分析與 DataFrame 操作 | 📦 礦石待採 |
numpy | 高效數值運算與陣列處理 | 📦 礦石待採 |
matplotlib | 基礎圖表繪製:折線圖、長條圖、K 線圖 | 📦 礦石待採 |
seaborn | 統計視覺化,基於 matplotlib 的進階封裝 | 📦 礦石待採 |
plotly | 互動式圖表,支援網頁嵌入 | 📦 礦石待採 |
scikit-learn | 機器學習模型訓練與評估 | 📦 礦石待採 |
🌐 網站開發
| 套件 | 核心用途 | 深度教學 |
|---|---|---|
Flask | 輕量級網站後端框架 | 📦 礦石待採 |
Flask-WTF / WTForms | 建立與驗證進階網頁表單 | 📦 礦石待採 |
Bootstrap-Flask | 在 Flask 中套用 Bootstrap 樣式 | 📦 礦石待採 |
Flask-Login | 使用者登入與身分驗證 | 📦 礦石待採 |
SQLAlchemy | ORM 資料庫操作(SQLite、PostgreSQL) | 📦 礦石待採 |
gunicorn | 部署 Python Web 應用的 WSGI 伺服器 | 📦 礦石待採 |
🔧 實用工具與自動化
| 套件 | 核心用途 | 深度教學 |
|---|---|---|
openpyxl | 讀寫 Excel .xlsx 檔案 | 📦 礦石待採 |
colorama | 在終端機輸出彩色文字 | 📦 礦石待採 |
prettytable | 在終端機輸出美觀的 ASCII 表格 | 📦 礦石待採 |
PyPDF2 | 讀取與操作 PDF 檔案 | 📦 礦石待採 |
send2trash | 安全移至垃圾桶,取代危險的 os 直接刪除 | 📦 礦石待採 |
pylint | 檢查程式碼風格(PEP 8)與靜態錯誤分析 | 📦 礦石待採 |
🏮 煉金師的使用提示
這張目錄不是用來「從頭讀到尾」的,而是你遇到問題時的快速索引。當你不確定該用哪個語法時,回到這頁找到對應的分類,點擊深度教學文章進入修煉即可。內建模組與第三方套件的文章會隨著實戰專案的推進陸續開採,標記「📦 礦石待採」的項目代表教學文章正在規劃中。