Sub-pillar 9.4 · Python

Học Python đúng cách

Python được Guido van Rossum tạo ra với triết lý "Beautiful is better than ugly, Readable counts". Sub-pillar này dạy Python 3.12+ với Pythonic idioms — type hints first-class, comprehension over loop, duck typing, EAFP, asyncio. Không phải "Java in Python" tutorial.

Python 3.12+ · 10 chương core · ~9,500 dòng · 50+ bài tập + quiz

Lộ trình 10 chương

Tập trung core ngôn ngữ + stdlib — không bao gồm framework (Django/FastAPI) hay data science (pandas/numpy) ở sub-pillar này. Mỗi chương ~700-1100 dòng, có: lý thuyết chi tiết, code chạy được, visualizer, 4-5 bài tập, 7-8 quiz, tổng kết.

Tại sao học Python core trước framework?

🧠 Mental model

Nhiều người học Python qua Django/Flask/FastAPI tutorial — viết web app được nhưng không hiểu generator, decorator, context manager, asyncio thật sự là gì. Khi gặp bug khó (memory leak với generator, deadlock asyncio, decorator mất metadata), không có khung tham chiếu để debug.

Sub-pillar này đi từ ngôn ngữ + stdlib. Batteries included là điểm mạnh nhất của Python — hiểu stdlib trước, thêm framework là chuyện đơn giản sau.

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Readability counts.
Zen of Python (PEP 20)
💡 Đối tượng phù hợp

Mới học programming — Python là ngôn ngữ tốt để bắt đầu (cú pháp đơn giản, ít boilerplate). Đã có nền JS/TS hoặc Dart — Python rất dễ tiếp thu, mỗi chương có callout so sánh với JS/Dart để build mental model nhanh.

⚠️ Cảnh báo

Tutorial Python trên internet thường dạy Python 2 cũ (đã EOL 2020) hoặc Python 3 không dùng type hints. Sub-pillar này 100% Python 3.12+ với type hints xuyên suốt — không có code nào "không annotate".

Quan hệ với các sub-pillar khác

Mỗi chương có section "Kết nối" trỏ tới chương khác trong Pillar 9 hoặc trụ cột nền tảng. Ví dụ: Chương 6 (Iterators & Generators) đối chiếu với JavaScript Chương 5 (Iteration Protocol); Chương 8 (asyncio) đối chiếu với Dart Chương 7 (Future & Stream); Chương 9 (typing) gần giống JavaScript Chương 9 (TypeScript Foundations).

Học xong 10 chương → bạn đã có 4 sub-pillar Pillar 9 hoàn chỉnh (Dart, Flutter, JavaScript, Python). Tiếp theo có thể đi sâu vào framework (Django, FastAPI cho Python; React/Next.js cho JS) hoặc ngôn ngữ mới (Go, Rust).