用 Claude Code 寫 Python

用 Claude Code 寫 Python(Claude Code with Python)

Python 教學系列的完結篇,我們把 43 篇的知識接上 AI 時代的工作方式:用 Claude Code——在終端機裡運作的 AI 編程助手——實際開發一個 Python 小工具。你可能會問:AI 都能寫了,前面 43 篇是學心酸的?恰恰相反,看得懂程式碼的人,才有能力審查、修正、駕馭 AI 的產出,這篇會具體示範這件事。

Claude Code 的安裝與完整功能本站有專門的教學系列,本篇聚焦「拿它來做 Python 開發」的工作流。

實戰任務:成績單 CSV 分析工具

用一個具體任務示範:寫一個程式,讀取成績 CSV、計算每人平均、輸出排名報表。在專案資料夾啟動 Claude Code 後,下這樣的指令:

請建立 report.py:讀取 scores.csv(欄位:name, subject, score),
計算每位學生的平均分數,依平均由高到低輸出排名。
使用 Python 3.14,檔案編碼 utf-8,不使用第三方套件。

Claude Code 會建立檔案、寫好程式,內容大致如下:

import csv
from collections import defaultdict

def load_scores(path):
    scores = defaultdict(list)
    with open(path, "r", encoding="utf-8") as f:
        for row in csv.DictReader(f):
            scores[row["name"]].append(int(row["score"]))
    return scores

def main():
    scores = load_scores("scores.csv")
    ranking = sorted(
        ((name, sum(s) / len(s)) for name, s in scores.items()),
        key=lambda x: x[1],
        reverse=True,
    )
    for i, (name, avg) in enumerate(ranking, start=1):
        print(f"第 {i} 名:{name}(平均 {avg:.1f})")

if __name__ == "__main__":
    main()

執行輸出(依 scores.csv 內容而異):

第 1 名:小華(平均 91.5)
第 2 名:小明(平均 85.0)
第 3 名:小美(平均 78.5)

重點:你學過的知識如何發揮

看懂這段 AI 產出的程式,需要的全是本系列教過的東西:

程式片段對應文章
csv.DictReaderencoding="utf-8"第 33、32 篇
defaultdict(list)(dict 包 list 的進化版)第 14、18 篇
sorted(..., key=lambda x: x[1], reverse=True)第 22 篇
generator 運算式 (... for ...)第 36 篇
if __name__ == "__main__":第 23 篇

審查清單——AI 產出後,至少檢查這四件事:

  1. 編碼有沒有指定(AI 有時會省略 encoding,Windows 上就中獎,見第 32 篇)
  2. 錯誤處理:檔案不存在、分數欄位不是數字時會怎樣?請它補上 try except(第 25 篇)
  3. 實際執行:跑一次、給它邊界案例(空檔案、只有一個學生)
  4. 看不懂的寫法直接問:「defaultdict 是什麼?為什麼用它?」——Claude Code 會解釋,這是最高效的學習方式

迭代修正的對話流

第一版很少是完成品,後續用自然語言迭代:

1. 「scores.csv 不存在時顯示友善訊息而不是 Traceback」
2. 「平均分數相同時並列名次」
3. 「加上 type hints 並通過 mypy 檢查」
4. 「幫 load_scores 寫 pytest 單元測試」

每一輪你都用學過的知識驗收。這個「描述 → 產出 → 審查 → 迭代」的循環,就是 AI 時代 Python 開發的日常——AI 負責打字,你負責思考與把關。

給接下來的路

Python 教學系列 44 篇到此完結。依你的方向,下一步可以是:

方向建議
資料庫應用本站 SQL 教學系列 搭配第 37~39 篇實作
AI 應用開發第 42、43 篇的 API 基礎上,研究 function calling 與 RAG
AI 輔助開發本站 Claude Code 教學系列,從基礎到 CI/CD 自動化
網站後端以本系列為基礎學 FastAPI 或 Django

總結

AI 不會取代懂程式的人,但會放大他們的產出。你現在兩者都有了:43 篇打下的 Python 基礎,加上驅動 AI 的工作流。整個系列的目錄在 Python 教學,忘記語法隨時回來查——這個系列就是為此而寫的。

延伸閱讀