正在啟動 Python 環境(首次約 15 秒)...
批次處理實戰
- 一次處理多筆商品或客戶資料時,列表/字典推導式能讓程式短又清楚。
- enumerate 取得序號,zip 併排兩個列表。
- 綜合案例:清洗一批客戶資料(去空白、統一大小寫、補上標記)。
小節:列表推導式清洗資料
一行就能對整個列表做「去空白 + 統一格式」,取代 for 迴圈。
小節:字典推導式批次計算
對字典的每個值做運算,產出新字典。
小節:enumerate 加上序號
需要知道「第幾筆」時,用 enumerate 取得索引,不用自己維護計數器。
小節:zip 併排處理
兩個列表要一起跑時,zip 把它們配對在一起。
AI 協作:學了這個,跟 AI 怎麼配合?
批次處理是自動化的終極應用——你會發現 AI 幫你省下的不是幾分鐘,是幾個工作天。
你的人類優勢:
- 你知道要處理的檔案在哪、輸出要存到哪
- 你能定義「處理成功」和「處理失敗」的判斷標準
可以這樣跟 AI 說:
我的資料夾有 50 個 CSV 檔案,每個都是月報。幫我寫一個 Python 腳本,把所有檔案合併成一個 DataFrame,新增一欄「來源檔名」。
練習題
Capstone:綜合練習
互動示範
DEMO 1可以修改程式碼試玩
DEMO 2可以修改程式碼試玩
DEMO 3可以修改程式碼試玩
DEMO 4可以修改程式碼試玩
挑戰任務
Task 1
用列表推導式把 [' a ','B','c '] 去空白並轉小寫後印出
Task 2
用字典推導式把 {'A':100,'B':200} 轉成折扣後價格(九折)並印出
Task 3
用 zip 將 ['DR-1','DR-2'] 與 [1,2] 配對,逐行印出 'DR-1:1' 這類字串
Task 4
清洗客戶資料:names=[' Alice ','BOB',' carol'],emails=['alice@shop.com','invalid','carol@shop.com']。用列表推導式把 names 去空白轉首字母大寫,再用 zip + 條件過濾出 email 包含 @ 的配對,逐行印出 'Name:Email'
Task 5
用 json.loads 解析 '{"orders":[{"id":1,"amount":500},{"id":2,"amount":300},{"id":3,"amount":800}]}',用列表推導式篩選 amount > 400 的訂單,印出這些訂單的 id 列表
← BackTake the Exam →