Nhiều lựa chọn với elif

Bài 5/6 · khoảng 7 phút đọc

Xếp loại điểm có nhiều mức, không chỉ hai. Dùng elif (viết tắt của else if — "nếu không thì nếu") để thêm lựa chọn:

Python
diem = 7
if diem >= 8:
print("Giỏi")
elif diem >= 6.5:
print("Khá")
elif diem >= 5:
print("Trung bình")
else:
print("Yếu")

Python kiểm tra từ trên xuống và dừng ở nhánh đúng đầu tiên; các nhánh sau bị bỏ qua.

Thứ tự điều kiện rất quan trọng

Điều kiện đặt sai thứ tự cho ra kết quả sai (một lỗi logic):

Python
diem = 9
if diem >= 5:
print("Trung bình")
elif diem >= 8:
print("Giỏi")

Với điểm 9, kết quả là "Trung bình" vì điều kiện đầu diem >= 5 đã đúng và Python dừng luôn. Luôn xếp từ mức cao nhất xuống thấp nhất.

if liên tiếp khác với elif

Hai lệnh if đứng riêng là hai câu hỏi độc lập — cả hai đều có thể chạy:

Python
so = 6
if so > 3:
print("lớn hơn 3")
if so > 5:
print("lớn hơn 5")

Còn chuỗi if…elif…else chỉ chạy một nhánh.

Ghi nhớ: if → elif → else: chỉ nhánh đúng đầu tiên được chạy. Xếp điều kiện từ mức cao xuống thấp.

Có thể có bao nhiêu `elif` trong một câu lệnh `if`?

Bao nhiêu cũng được (không giới hạn), và else ở cuối là tuỳ chọn.

Nhiều lựa chọn với elif · Lý thuyết Python · PyKid