給 Python 初學者的練習指南。
把課程用起來的實際方法:核心學習計畫、從答案中學習的三步法,以及 print、迴圈、列表、元組、類、模組、巢狀資料、遞迴、正則、生成器、裝飾器、上下文管理器、dataclasses、itertools、collections、functools、列舉、CSV、日誌、pathlib、日期、斷言、型別提示、HTTP 請求、HTML 解析、URL 解析、分頁、robots.txt、分詞、softmax、k-NN、模型評估、提示詞校驗、線性回歸、梯度下降、樸素貝氏、k-means 和模型監控的專項練習。
Python 初學者練習計畫:4 週上手路線
初學者通常不缺影片,缺的是少量概念加上足夠多次的主動練習。這份計畫把前 10 節核心短課安排成 4 週,每天 20–30 分鐘,重點是寫程式碼、預測結果和糾正錯誤;後面 40 節進…
練習方法Python 練習題帶答案:如何練習而不只是抄答案
答案只有在你先嘗試之後才有價值。如果一上來就看答案,你可能會「認得」它,卻無法獨立寫出來。下面這套三步法,能把答案解釋變成真正的能力。…
課程重點Python print 練習:sep、end 與 f-string
print() 看起來簡單,卻是檢查程式最快的方式。這組練習覆蓋初學者最容易忽略的細節:分隔符、行尾、引號和格式化。…
課程重點Python 迴圈練習:覆蓋大多數初學者問題的 5 個模式
大多數初學者迴圈題,都是五個基本模式的變體。先認出模式,再寫語法,比面對空白編輯器硬想更快。…
課程重點Python 列表練習:索引、切片與排序
列表是大多數初學者最早使用的資料結構,也是小錯誤的集中地。這組練習聚焦索引、切片、原地修改,以及 sort 和 sorted 的區別。…
專項練習Python while 迴圈練習:覆蓋大多數問題的 5 個模式
大多數 while 迴圈題都是五個基本模式的變體。先認出模式,再寫條件和更新語句,就不用憑感覺試。…
專項練習Python 元組與集合練習:固定記錄與唯一值
元組和集合解決兩類不同的問題:儲存固定記錄,以及只保留唯一值。練習在它們之間做選擇,而不是預設使用列表。…
專項練習Python 列表推導式練習:映射、篩選與建構
推導式是建構集合的緊湊寫法。真正該問的不是「能不能寫短」,而是「轉換是否仍然一眼可見」。…
專項練習Python 排序練習:key、reverse 與記錄排序
給數字列表排序只是第一步。真正有用的是按指定欄位排序記錄,同時保留原始資料。…
專項練習Python 類練習:建構一個小型物件模型
從一個小的記錄開始,類會更容易理解。先讓物件儲存幾個欄位,加一個方法,測試通過後再增加行為。…
專項練習Python 匯入練習:模組、別名與標準函式庫
匯入只是很小的語法,卻能帶來很大的收益:你可以直接使用經過測試的程式碼,而不是重新實現每個工具。關鍵是讓每個名字的來源清楚可見。…
專項練習Python 巢狀資料練習:字典列表
巢狀資料看起來複雜,直到你給每一層命名。字典列表不過是一組記錄,每個字典就是一條帶欄位的記錄。…
專項練習Python Lambda、map 與 filter 練習
map 和 filter 是轉換與篩選的短工具。函式足夠簡單,並且記住 Python 3 中它們回傳惰性迭代器時,這兩種工具最好用。…
專項練習Python 遞迴練習:基線條件與更小的問題
先寫停止條件,遞迴會容易很多。然後只問一個問題:這個函式可以把什麼樣更小的輸入傳給自己?…
專項練習Python 正規練習:尋找、提取與替換
正規表達式是一種描述文字模式的緊湊語言。先寫一個清楚的模式,在小字串上測試,再添加分組或量詞。…
專項練習Python enumerate 與 zip 練習:更乾淨的迴圈
迴圈裡的大多數錯誤都來自記帳:索引悄悄偏移、計數器從錯誤的位置開始,或者兩個列表已經對不上卻沒人發現。enumerate 和 zip 把這些關係寫進迴圈頭部,讓問題更容易看見。…
專項練習Python pathlib 練習:路徑、檔名與文字檔
路徑不只是一個字串。它有父目錄、檔名、後綴和平臺相關的分隔符。pathlib 給這些概念起了名字,讓程式碼可以表達真實意圖,而不是用加號拼字串。…
專項練習Python datetime 練習:日期、時間差與格式化
日期看起來簡單,直到月份長度、閏年和時區出現。datetime 模組會替你處理日曆規則。真正的關鍵是選對物件:日期、時長,還是某個具體瞬間。…
專項練習Python assert 練習:用斷言測試函式
斷言是你對程式做出的聲明。聲明為假時,Python 會拋出 AssertionError 並停止目前路徑。只要不把它和輸入驗證混為一談,assert 就是很好的教學和測試工具。…
專項練習Python 型別提示練習:讓註解幫助讀者
型別提示是溝通工具。它告訴讀者函式接收和回傳什麼,也給編輯器足夠的資訊,在錯誤進入執行時之前發出提醒。它不會把 Python 變成靜態型別語言。…
專項練習Python 生成器練習指南:惰性取值
生成器不只是新語法,它改變了執行方式:產生一個值,暫停,之後再繼續。當完整列表浪費記憶體、無法建構,或者根本不需要時,這種模型特別有用。…
專項練習Python 裝飾器練習指南:包裝函式
裝飾器的想法很小,回報卻很大:函式可以傳給另一個函式,並被它的回傳值替換。理解這一點後,日誌、計時、快取和驗證就能變成可復用的層,而不是到處複製的程式碼。…
專項練習Python 上下文管理器練習指南
成功路徑上的清理很容易忘記,例外打斷函式時更容易漏掉。上下文管理器把準備和收尾放在程式碼區塊兩側,讓清理邏輯只有一個明確的歸屬。…
專項練習Python dataclass 練習指南:欄位
dataclass 是一種簡潔表達「這個類主要裝資料」的方式。它會生成重複方法,但仍然只是普通 Python 類。理解它生成了什麼、沒有生成什麼,既能減少樣板,也能避免錯誤期待。…
專項練習Python itertools 練習指南:惰性資料流
itertools 是一組小型迭代器工具。它們不試圖解決整個問題,而是可以組合。認識 count、islice、chain 和 groupby 之後,很多迴圈會變得更短、更容易讀。…
專項練習Python collections 練習:計數、分組與佇列
collections 模組提供一組減少樣板程式碼的小工具。你不需要手寫計數迴圈、缺失鍵判斷或佇列,而是直接選擇行為已經比對問題的容器。…
專項練習Python functools 練習:快取、偏函式與歸約
functools 的重點是改造函式,而不是重寫函式。你可以快取昂貴結果、固定一個參數、把序列摺疊成一個值,或者在包裝可呼叫物件時保留元資料。…
專項練習Python 列舉練習:名稱、值與尋找
列舉給狀態、顏色、方向這類概念一組固定名稱。成員是真實物件,而不是散落的字串,因此比較和尋找都更明確。…
專項練習Python CSV 練習:讀取、寫入與引號
CSV 看起來像純文字,直到欄位裡出現逗號。csv 模組負責引號、分隔符和行邊界,你不需要手工按行拆分。…
專項練習Python 日誌練習:級別、處理器與格式
需要上下文時,print 語句就不夠了。日誌給每條訊息一個嚴重級別、一個目的地和一種格式,讓你不必修改每個呼叫點就能檢查生產行為。…
專項練習Python 爬蟲練習:搭建禮貌的抓取流水線
爬蟲是一條流水線,不是一次請求。這些練習把抓取、解析、提取和儲存分開,讓每個階段都能在不存取真實網站的情況下測試。…
專項練習Python HTMLParser 練習:連結、文字與屬性
把解析器拆成小型處理器,更容易信任。這些練習每次只增加一個職責:收集標籤、讀取屬性、捕獲文字,最後組合成記錄。…
專項練習Python URL 解析練習:拼接、查詢與清理
很多重複連結並不是真的重複,而是同一個目的地的四種寫法。這些練習把 URL 字串拆成組成部分,基於頁面補全,再重建成規範值。…
專項練習Python 分頁抓取練習:佇列、存取集與預算
分頁抓取本質上是帶預算的圖走訪。佇列決定下一頁,visited 集合防止繞圈,限制讓執行結束。這些練習先分別實現,再組合起來。…
專項練習Python robots.txt 練習:規則、延遲與倫理
robots.txt 檔案很小,影響卻很大。這些練習解析常見指令,解釋最長比對優先級,並把檔案放回「禮貌抓取或乾脆不抓」的完整決策中。…
專項練習Python 分詞練習:詞元、向量與餘弦相似度
分詞是 AI 流水線第一個可能悄悄丟失資訊的地方。這些練習把選擇擺到明面上:什麼算一個詞元、詞表如何共用,以及相似度分數能說明什麼、不能說明什麼。…
專項練習Python softmax 練習:穩定性、溫度與對數損失
softmax 看起來只有兩行算術,細節卻很重要:溢出、溫度,以及機率和決策之間的區別。這些練習逐塊搭建,再連接到損失函式。…
專項練習Python k-NN 練習:距離、投票與縮放
k-NN 是很好的第一個分類器,因為每個決定都看得見:距離、鄰居、投票和評估都能檢查。這些練習讓每一步都可以測試。…
專項練習Python 模型評估練習:不只看準確率
評估是模型與決策相遇的地方。一個準確率數字可能掩蓋「永遠找不到關心類別」的分類器。這些練習先計算混淆矩陣,再從中推導指標。…
專項練習Python 提示詞驗證練習:JSON、結構與安全
模型只是 AI 功能的一部分。週圍的 Python 決定輸入什麼、輸出是什麼形狀,以及回應錯誤時怎麼辦。這些練習建構驗證層,避免壞回應變成壞操作。…
專項練習Python 線性回歸練習:配適、預測與評估
這些練習把線性回歸縮小到可以手工檢查的程度。你會配適直線、用基線比較誤差,並判斷一個預測是否超出了證據範圍。…
專項練習Python 梯度下降練習:損失、步長與學習率
當每一步都看得見時,梯度下降才更容易被信任。這些練習把損失、梯度、更新和停止規則拆開,再展示一個糟糕的學習率如何讓它們全部失效。…
專項練習Python 樸素貝葉斯練習:計數、先驗與平滑
樸素貝葉斯大部分工作就是細緻地計數。這些練習構造計數表、轉成平滑機率、在對數空間比較類別,並在未參與訓練的文字上檢查結果。…
專項練習Python k-means 練習:分配、更新與評估
把分配、更新和評估拆成練習,k-means 就沒那麼神秘。這些例子只使用二維小資料,每個質心都能手工核對。…
專項練習Python 模型監控練習:漂移與警示
監控不是堆滿數字的儀錶盤,而是一組小型比較。這些練習建立基線、衡量偏移、判斷證據是否足夠,並只記錄真正需要的聚合值。…
專案實錄用 Python 跑批量 AI 任務:佇列、重試、斷點與成本
批量任務不是給 API 呼叫套一層 for 迴圈。這篇實錄搭出讓它跑得住、停得下、算得清的四件事:穩定任務 key、併發上限、斷點檔案、開跑前就能說清的價格。…
專案實錄用 Python 部署本機大模型:Ollama、VRAM 預算與可用介面
本機模型是一個有記憶體預算、有延遲曲線的行程,不是黑盒。這篇實錄講清決定它能不能撐過一下午的幾件事:量化、VRAM 算術、一個 HTTP 介面、降級鏈,以及上線後該看的數字。…