-----------------------------------------
圖片放大特效
table樣式
- [封面](#week-17-小專案實作)
- [步驟一:需求分析](#步驟一:需求分析) - [步驟二:設計資料結構](#步驟二:設計資料結構) - [小練習 1:新增紀錄](#小練習-1) - [小練習 2:顯示紀錄](#小練習-2) - [小練習 3:計算總結](#小練習-3) - [專案進階挑戰](#專案進階挑戰)
(點擊上方連結可快速跳轉到對應投影片)
- **運算思維**: - **問題分解**: 將專案需求分解為可實作的功能模組 - **抽象化**: 設計專案的整體架構與流程 - **演算法思維**: 整合各種演算法解決複雜問題 - **模式識別**: 應用學過的程式設計模式
--- ## 🎯 學習目標 今天我們將學會如何將一個想法,變成一個真正可以運作的Python小專案! - 學會專案規劃與需求分析 - 學會如何將程式模組化 - 學會專案時程與版本管理 - 學會測試與除錯
--- ## 步驟三:主程式架構 ```python def main(): records = [] while True: print("1. 新增紀錄 2. 顯示紀錄 3. 計算總結 4. 離開") choice = input("請選擇功能:") if choice == "1": # 新增紀錄 ... elif choice == "2": # 顯示紀錄 ... elif choice == "3": # 計算總結 ... elif choice == "4": break ``` --- # 小練習 1 請試著完成「新增紀錄」的功能,提示使用者輸入收入/支出、金額與備註,並將資料加入records串列。 ```python # 請補上新增紀錄的程式碼 def add_record(records): t = input("收入或支出?") amt = int(input("金額:")) note = input("備註:") record = {"type": t, "amount": amt, "note": note} records.append(record) ``` --- # 小練習 2 請完成「顯示紀錄」的功能,將所有紀錄列印出來。 ```python def show_records(records): for r in records: print(f"{r['type']} {r['amount']} 元 - {r['note']}") ``` --- # 小練習 3 請完成「計算總結」的功能,分別計算總收入與總支出。 ```python def summary(records): income = sum(r['amount'] for r in records if r['type'] == "收入") expense = sum(r['amount'] for r in records if r['type'] == "支出") print(f"總收入:{income} 元") print(f"總支出:{expense} 元") ``` --- # 專案進階挑戰 - 將資料儲存到檔案,下次可以讀取 - 增加「刪除紀錄」功能 - 美化輸出介面 --- ## 🧠 運算思維總整理 - **問題分解**:將專案拆解成「新增」、「顯示」、「計算」等小功能 - **抽象化**:用list和dict管理資料 - **演算法思維**:用sum、for迴圈計算總結 - **模式識別**:發現每個功能都要處理records資料











- 學會如何從想法到專案的完整流程
- 體驗專案管理與測試
--- ## 作業: --- #### 📝 **選項一:基礎練習** (適合初學者) - 完成記帳系統的三大功能(新增、顯示、計算) - 嘗試將資料儲存到檔案 --- #### 🔧 **選項二:進階應用** (有點挑戰性) - 增加「刪除紀錄」、「修改紀錄」功能 - 美化輸出介面(如表格顯示) --- #### 🚀 **選項三:創意發揮** (自由度高) - 設計屬於你自己的小專案(如:待辦清單、簡易遊戲、資料視覺化) - 分享你的專案設計與心得