พื้นฐานและไวยากรณ์
ปรัชญาการออกแบบของ Python
หัวข้อที่มีชื่อว่า “ปรัชญาการออกแบบของ Python”Python ถูกออกแบบมาบนหลักการเดียว: โค้ดควรอ่านได้เหมือนภาษาอังกฤษธรรมดา Guido van Rossum ผู้สร้าง Python เลือกสละความยืดหยุ่นบางส่วนเพื่อแลกกับความอ่านง่าย
ปรัชญานี้ถูกบันทึกไว้ใน PEP 20 หรือที่รู้จักกันว่า The Zen of Python
รัน import this ในเซสชัน Python ใดก็ได้เพื่อดู
สามบรรทัดที่กำหนดทิศทางทุกอย่าง:
- Beautiful is better than ugly. — สวยงามดีกว่าน่าเกลียด
- Explicit is better than implicit. — ชัดเจนดีกว่าซ่อนเร้น
- There should be one — and preferably only one — obvious way to do it. — ควรมีวิธีเดียวที่ชัดเจน
บรรทัดสุดท้ายสำคัญที่สุดสำหรับการเรียนรู้: เมื่อคุณค้นหาวิธีทำสิ่งใดสิ่งหนึ่งใน Python มักจะมีคำตอบที่ได้รับการยอมรับอยู่เสมอ
การเยื้องบรรทัดที่มีความหมาย
หัวข้อที่มีชื่อว่า “การเยื้องบรรทัดที่มีความหมาย”Python ใช้ การเยื้อง (4 ช่องว่างต่อระดับ ตามมาตรฐาน) เพื่อกำหนดบล็อกโค้ด ไม่มีวงเล็บปีกกาและไม่มีเครื่องหมายเซมิโคลอน
def is_even(n: int) -> bool: if n % 2 == 0: return True return False
for i in range(5): if is_even(i): print(i, "is even")การผสม tab กับ space จะทำให้เกิด TabError
มาตรฐานของชุมชน (PEP 8) คือ 4 ช่องว่าง — ตั้งค่า editor ครั้งเดียวแล้วลืมได้เลย
เนื้อหาในโมดูลนี้
หัวข้อที่มีชื่อว่า “เนื้อหาในโมดูลนี้”| บทเรียน | แนวคิดหลัก |
|---|---|
| Variables & Types | Dynamic typing, ชนิดข้อมูลพื้นฐาน, truthiness |
| Control Flow | if/elif/else, for, while, walrus := |
| Functions | def, พารามิเตอร์, ค่าที่คืน, LEGB scope |
| Strings | Methods, slicing, f-strings, immutability |
แต่ละบทเรียนเป็นอิสระและจบด้วย playground ที่รันได้, callout, แบบทดสอบ, และจุดตรวจสอบความก้าวหน้า
สคริปต์ Python แรกของคุณ
หัวข้อที่มีชื่อว่า “สคริปต์ Python แรกของคุณ”สคริปต์ด้านล่างแสดงไวยากรณ์หลักที่คุณจะพบในทุกบทเรียน: ตัวแปร, ฟังก์ชัน, ลูป, และ f-string
def describe(value: int) -> str: """Return a short description of a number.""" if value < 0: label = "negative" elif value == 0: label = "zero" else: label = "positive" return f"{value} is {label}"
numbers = [-3, 0, 7, 42]for n in numbers: print(describe(n))
total = sum(numbers)print(f"Sum: {total}")print("First program complete.")Loading Python runtime (first run only)…