Bài 3. Câu lệnh điều kiện

Chương trình cần "rẽ nhánh" để quyết định làm gì tùy tình huống. Bài này dạy câu lệnh if, elif, else và phép so sánh.

30 phútCơ bản
Bạn sẽ học được
  • So sánh giá trị và kết hợp điều kiện
  • Viết if, elif, else đúng thụt lề
  • Hiểu giá trị đúng/sai (truthy, falsy)
  • Giải bài toán phân loại điểm, kiểm tra tuổi
Thuật ngữ cần biết
Điều kiện
Biểu thức cho kết quả True hoặc False.
Thụt lề (indent)
Khoảng trắng đầu dòng cho biết lệnh thuộc khối nào; Python dùng 4 dấu cách.
Toán tử logic
and (và), or (hoặc), not (phủ định).

Phép so sánh

Toán tửÝ nghĩaVí dụ
==bằng5 == 5 là True
!=khác5 != 3 là True
< >nhỏ hơn, lớn hơn2 < 9
<= >=nhỏ hơn hoặc bằng, lớn hơn hoặc bằng7 >= 7

Nhớ: = là gán, == mới là so sánh.

Cấu trúc if - elif - else

diem = float(input("Điểm: "))
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, gặp điều kiện đúng đầu tiên thì thực hiện khối đó rồi bỏ qua phần còn lại. Vì vậy thứ tự điều kiện rất quan trọng.

Nhập điểm≥ 8?≥ 6.5?≥ 5?Yếu

Kết hợp điều kiện

tuoi = 17
co_the = True
if tuoi >= 18 and co_the:
    print("Được tham gia")
elif tuoi >= 16 or co_the:
    print("Cần người lớn đi cùng")

nam_nhuan = (n % 4 == 0 and n % 100 != 0) or n % 400 == 0
Tình huống: Phí gửi xe

Quy định: xe máy 3 000 đồng, ô tô 20 000 đồng, ngoài giờ phụ thu 50%. Chương trình hỏi loại xe và giờ gửi rồi tính tiền.

loai = input("Loại xe (may/oto): ")
gio = int(input("Giờ gửi (0-23): "))
gia = 3000 if loai == "may" else 20000
if gio < 6 or gio >= 22:
    gia *= 1.5
print(f"Phí: {gia:,.0f} đồng")
Mẹo hay

Biểu thức gọn: kq = "Đạt" if diem >= 5 else "Chưa đạt". So sánh dạng chuỗi: 0 <= x < 10 hợp lệ trong Python.

Lưu ý

Lỗi IndentationError xảy ra khi thụt lề không đều. Đừng trộn phím Tab và dấu cách.

Thực hành
  1. Nhập một số, in "chẵn" hoặc "lẻ".
  2. Nhập ba số, in số lớn nhất không dùng hàm max.
  3. Giải phương trình bậc nhất ax + b = 0 (xét a = 0).
  4. Kiểm tra năm nhuận.
Tóm tắt bài học
  • if/elif/else chọn nhánh theo điều kiện.
  • Thụt lề 4 dấu cách xác định khối lệnh.
  • Kết hợp bằng and, or, not.
  • Thứ tự các elif ảnh hưởng kết quả.