⏱️ ~9 นาที
การตัดสินใจด้วย if/elif/else
ทำให้โปรแกรมเลือกทางเดินตามเงื่อนไขใน Python
ตัดสินใจใน Python
Python ใช้ if / elif / else เหมือนหลายภาษา แต่มีจุดพิเศษ:
- ใช้
elifแทนelse if - จบบรรทัดด้วย
:(colon) - ใช้ ย่อหน้า แบ่งบล็อก (ไม่ใช่
{ })
if พื้นฐาน
age = 20
if age >= 18:
print("เข้างานได้")
- ถ้าเงื่อนไข
age >= 18เป็นจริง → โค้ดที่ ย่อหน้า ทำงาน - ใช้ 4 ช่องว่าง ในการย่อหน้า
เพิ่ม else
age = 15
if age >= 18:
print("เข้างานได้")
else:
print("กลับบ้านไป")
ผลลัพธ์: กลับบ้านไป
หลายกรณี: elif
score = 75
if score >= 80:
print("เกรด A")
elif score >= 70:
print("เกรด B")
elif score >= 60:
print("เกรด C")
else:
print("ไม่ผ่าน")
⚠️ เช็กจากบนลงล่าง พอเจอข้อที่เป็นจริงจะ ทำและหยุด
ตัวดำเนินการเปรียบเทียบ
x = 10
print(x > 5) # True มากกว่า
print(x < 5) # False น้อยกว่า
print(x >= 10) # True มากกว่าหรือเท่ากับ
print(x <= 9) # False
print(x == 10) # True เท่ากับ (สองตัว!)
print(x != 5) # True ไม่เท่ากับ
⚠️ เท่ากับใช้
==(สองตัว) ส่วน=ตัวเดียวคือการกำหนดค่า
ตัวดำเนินการตรรกะ
Python ใช้คำแทนสัญลักษณ์:
| ความหมาย | Python | เทียบ JS |
|---|---|---|
| และ | and | && |
| หรือ | or | || |
| กลับค่า | not | ! |
age = 25
has_id = True
if age >= 18 and has_id:
print("ผ่าน")
if age < 18 or not has_id:
print("ไม่ผ่าน")
ซ้อนเงื่อนไข
has_ticket = True
age = 20
if has_ticket:
if age >= 18:
print("เข้าชมได้")
else:
print("ต้องมีผู้ปกครอง")
else:
print("ซื้อตั๋วก่อน")
เทียบหลายค่าพร้อมกัน (Python มีเทียบเอง!)
day = "เสาร์"
if day == "เสาร์" or day == "อาทิตย์":
print("วันหยุด")
# สั้นกว่า: ใช้ in
if day in ("เสาร์", "อาทิตย์"):
print("วันหยุด")
ค่าที่ถือเป็น "เท็จ" (Falsy)
if 0: # เท็จ
if "": # เท็จ (ข้อความว่าง)
if None: # เท็จ
if []: # เท็จ (list ว่าง)
if False: # เท็จ
ค่าอื่น ๆ เป็นจริง:
name = ""
if name:
print("มีชื่อ")
else:
print("ไม่มีชื่อ") # ทำบรรทัดนี้
ลองทำจริง: เครื่องคิดเกรด
score = int(input("คะแนน: "))
if score >= 80:
grade = "A"
elif score >= 70:
grade = "B"
elif score >= 60:
grade = "C"
elif score >= 50:
grade = "D"
else:
grade = "F"
print(f"คุณได้เกรด {grade}")
ข้อผิดพลาดที่พบบ่อย
❌ ลืม colon:
if age >= 18 # SyntaxError!
print("ผ่าน")
❌ ผสม tab กับ space:
if True:
print("a") # space
print("b") # tab → Error!
✅ ใช้ space 4 ช่อง ให้เป็นนิสัย และตั้งค่า VS Code ให้กด tab แล้วได้ 4 spaces
สรุป
| รูปแบบ | ใช้เมื่อ |
|---|---|
if | เงื่อนไขเดียว |
if / else | สองทาง |
elif | หลายทาง |
and / or / not | เชื่อมเงื่อนไข |
: + ย่อหน้า | บังคับทุกครั้ง |
บทหน้า: ทำซ้ำด้วย ลูป ใน Python 🔄
อ่านจบแล้ว? ทำเครื่องหมายว่าเสร็จเพื่อบันทึกความคืบหน้า
🧠
แบบทดสอบ
ตอบให้ครบแล้วกด “ตรวจคำตอบ” เพื่อเช็คความเข้าใจ
1. ใน Python ใช้คำสั่งใดตรวจสอบเงื่อนไขหลายกรณีที่ต่อเนื่อง?
2. ท้ายบรรทัด if ต้องมีสัญลักษณ์อะไร?
3. ข้อใดเป็นนิพจน์เปรียบเทียบที่ถูกต้องใน Python?
กำลังโหลด…