2026年8月21日 星期五

Python一下:從風土資料到智慧生活的程式設計

智慧生活科技專業社群|Python學習導航

Python一下:從風土資料到智慧生活的程式設計

從一隻會畫圖的海龜出發,走進百香果分級、中文檔案、小遊戲、網路資料與智慧物聯網。這不是文章清單,而是一條可以真正走完的Python學習路徑。

學Python不只是記住語法,而是學會把地方問題說清楚、把資料整理好,再讓程式替生活創造新的可能。

先看地圖:我現在應該學什麼?

第一次學習請由左至右;已有基礎者,可以直接從需要的主題開始。

STEP 1看見程式
輸出、Turtle、指令順序
STEP 2控制程式
變數、判斷、迴圈
STEP 3整理資料
List、Tuple、Set、Dict
STEP 4完成作品
函式、檔案、遊戲、IoT
學習方式:每篇文章都建議完成「先預測結果 → 親手輸入 → 修改一處 → 解釋差異」四個動作。不要只複製貼上,也不要只看AI的答案。

第一站|認識Python,讓程式動起來

打好Python程式基礎

入門Turtle函式

從畫線、長方形、正方形到星星,理解指令順序、迴圈與函式。

挑戰:改變顏色、角度與重複次數,創作自己的風土圖騰。

第二站|變數、判斷與迴圈

Python迴圈的美

基礎whileforif

以Turtle重複畫圓,比較逐行重複、whilefor及遞迴的不同寫法。

關鍵問題:同一個結果,為什麼可以有多種程式寫法?

Python雙迴圈基礎教材

基礎進階巢狀迴圈

從列與欄理解雙迴圈,建立圖形排列、座位表與二維資料的基礎。

挑戰:輸出實心方塊、空心方塊、三角形及棋盤圖案。

夠Python,九九乘法表

進階生成式join

將傳統雙迴圈改寫成串列生成式,體會精簡但仍須兼顧可讀性的Pythonic風格。

第三站|用風土資料學四大資料結構

當資料愈來愈多,重點不只是「存進去」,而是選擇最適合的資料結構。以下系列以百香果分級為共同情境。

資料結構生活比喻適用情形文章主題
List 串列可以調整順序的清單有順序、可重複、可修改從百香果分級看List串列
Tuple 元組公告後固定的標準有順序,但不希望被更改以Tuple表示百香果分級標準
Set 集合不重複的品項名單去除重複、交集與差集用Set進行百香果分級判斷
Dict 字典用等級查詢規格以鍵快速找到對應的值用Dict查詢百香果分級標準

前往「Python創新教材」彙整頁閱讀四篇文章 →

風土任務:將「百香果分級」改成雲林文旦、花生、烏魚子或水井村農漁產資料,並說明為什麼選擇這種資料結構。

第四站|函式:把解法變成可以重複使用的工具

函式不是為了把程式變難,而是替一段有意義的工作命名。建議回到「打好Python程式基礎」的繪圖程式,依序完成:

  1. 先寫出可以執行的重複指令。
  2. def將繪圖步驟包成函式。
  3. 加入長度、顏色、角度等參數。
  4. 讓函式回傳計算結果或執行狀態。
  5. 組合多個小函式,完成一個可測試的作品。
AI Pair任務:請AI提出重構建議,但學生必須逐項說明「修改了什麼、為什麼更好、測試結果為何」。

第五站|檔案與中文資料處理

檔案的簡易操作

基礎openUTF-8with

練習寫入、讀取、換行、中文編碼及with open()的安全寫法。

第六站|用小遊戲整合基本語法

用集合特性開發新版XAXB

程式重構Set生成式

比較2018與2019版本,觀察集合及生成式如何縮短程式。

Challenge AI:比較兩版的正確性、可讀性、效率及輸入例外。

第七站|從基本語法走向智慧生活

Python網路爬文

網路資料

讓Python從本機走向網路,取得可分析的公開資料。

micro:bit OLED初接觸

MicroPython硬體

把變數、迴圈及字串顯示在真實硬體上,感受程式與環境互動。

給學生的建議修課順序

階段學習內容代表文章學習成果
W1–W2動機、輸出、Turtle初遇Python、打好Python基礎完成風土圖騰
W3–W5變數、型別、判斷、迴圈變數是標籤、迴圈的美完成互動判斷程式
W6–W8雙迴圈、期中整合雙迴圈教材、九九乘法表完成圖形排列與解釋
W10–W12四大資料結構百香果List/Tuple/Set/Dict建立風土分級資料
W13–W14函式、檔案、例外檔案簡易操作、中文字數完成資料讀寫工具
W15–W17遊戲或智慧生活PBL猜數字、XAXB、UDP、micro:bit完成可展示專題
三層學習法:No-AI先獨立理解與手寫;AI Pair利用AI解釋、除錯及比較;Challenge AI則閱讀AI產生的程式,找錯、修改、設計測資並提出證據。

最後提醒:會執行,不等於會程式設計

真正的學習證據不是「畫面跑出來了」,而是能回答以下五個問題:

  1. 這段程式要解決什麼問題?
  2. 資料如何輸入、處理與輸出?
  3. 為什麼選擇這種流程或資料結構?
  4. 如果輸入錯誤或遇到邊界值,程式會怎樣?
  5. 你如何證明修改後的程式是正確的?

從風土資料出發,讓程式理解地方;從智慧生活出發,讓技術回到人的需要。

沒有留言:

張貼留言