你真的要如何從零開始學 Python?
一份實用的 Python 學習路線圖,涵蓋環境設置、核心概念、實際專案,以及初期應該跳過的內容。
「從白紙開始」意味著沒有先前的代碼經驗、沒有半途而廢的教程、沒有假定的知識。就是你、一個空白的編輯器,和一個你真正想使用的語言。這是我會給今天開始的人的路徑,不是課程行銷頁面想賣給你的那條路。
設置你理解的環境
從 python.org 安裝 Python 3.12 或更新版本,或如果你在 macOS/Linux 上想要日後版本控制,就使用 pyenv。除非你已經知道自己要走向資料科學,否則跳過 Anaconda——它增加了你現在不需要的重量。
用 VS Code 加上 Python 擴充功能。打開終端,輸入 python3 --version,確認它能運行。然後建立一個資料夾,cd 進去,執行 python3 -m venv venv 接著 source venv/bin/activate(Windows 上用 venv\Scripts\activate)。現在就熟悉虛擬環境——每個真實專案都使用它們,這裡的困惑會造成大多數初期的挫折。
按順序學習這個語言
不要跳著學。按順序進行,在移動到下一個之前為每個寫代碼:
- 變數、字符串、數字、布林值
- 列表、字典、元組、集合
- 條件語句(
if/elif/else)和迴圈(for、while) - 函式——引數、返回值、預設參數
- 檔案 I/O——讀寫文字和 CSV 檔案
- 異常處理搭配
try/except - 類別和物件,只需基礎
- 模組和導入,包括標準函式庫
抗拒提早學習裝飾器、生成器或非同步的誘惑。它們稍後很重要,但現在會拖累你,讓你在實際上並不落後時感覺自己落後了。
立即建置小東西
讀關於迴圈的東西不會教你迴圈。寫一個計算文字檔案中詞頻的腳本。建立一個命令行待辦清單,存到 JSON 檔案。用 random 和 string 模組做個簡單的密碼生成器。每一個花一個晚上,不是一週,每一個都強迫你使用真實語法而不是複製例子。
一個具體的初始專案:一個讀取支出 CSV 並按類別印出總計的腳本。
import csv
from collections import defaultdict
totals = defaultdict(float)
with open("expenses.csv") as f:
reader = csv.DictReader(f)
for row in reader:
totals[row["category"]] += float(row["amount"])
for category, total in totals.items():
print(f"{category}: ${total:.2f}")
這個腳本涉及檔案處理、字典、迴圈和格式化輸出——十行程式碼裡大部分的基礎概念。
讀錯誤訊息,不要害怕它們
一個 KeyError 告訴你字典鍵不存在。一個 TypeError: unsupported operand 告訴你你在某處混合了字符串和整數。Python 的追蹤返回指向確切的那一行。新學者常常恐慌並搜索 Stack Overflow 而不是讀錯誤的最後一行,它通常清楚說明了什麼出錯。訓練自己從下而上讀。
在安裝套件前使用標準函式庫
初學者常常在學習已經內建的東西之前就去找第三方套件。os、pathlib、datetime、json、re 和 collections 涵蓋了日常腳本需求的巨大比例。先在這些上面變得流暢。當你真的需要外部套件時,在虛擬環境內用 pip install 並用 pip freeze > requirements.txt 凍結依賴,這樣你的專案保持可重製。
基礎感覺紮實後選擇方向
經過三到四週的穩定練習,你會注意到什麼吸引你的興趣——自動化、用 Flask 或 Django 的網頁應用、用 pandas 的資料工作,或安全任務的腳本化。每個方向重複使用相同的基礎但指向不同的函式庫。不要試著同時學習所有;選一個並在一個月內深入探索。
初期要跳過什麼
跳過型別提示、跳過虛擬機器、跳過試著記住每個字符串方法。跳過看好幾小時視頻而不自己輸入代碼——輸入是學習真正發生的地方,不是看。一個你跟著走、暫停來輸入每一行的 20 分鐘教程,教得比一個你被動看的 3 小時講座多得多。
如果你想要超越這個的結構化練習,Korra Studio 的 Python 和 Scripting 段落用你可以直接在瀏覽器中執行的實作練習逐步講解這些相同的基礎概念。
本文由 AI 協助撰寫,經 Michal Pilch(CISSP)審核並發佈,Korra Studio。
這是 Korra Studio 知識庫中的一篇筆記——該平台將每個主題與一對一的師資配對。
免費開始arrow_forward