Bài 03: Câu Lệnh (mệnh đề) if else trong python

Ở bài trước chúng ta đã biết được các kiểu dữ liệu thông dụng trong python, đồng thời chúng ta cũng đã học được hàm print dùng để in giá trị ra màn hình. Tiếp theo bài này chúng ta sẽ tìm hiểu một kiến thức mới đó là câu lệnh if else if else lồng nhau trong python.

Như ta biết mệnh đề thường sẽ trả lời các câu hỏi như "nếu đúng ... thì làm ... ", nghĩa là nếu thỏa mãn điều kiện thì làm công việc gì đó. Nếu như bạn đã học qua một số ngôn ngữ khác như PHP, C++, C# thì chúng ta có cú pháp là:

if (expression){
    //statement
}
else {
    // statement
}
Nhưng với Python thì cú pháp mệnh đề if else hoàn toàn khác, khác như thế nào thì chúng ta bắt đầu tìm hiểu nhé.

1. Cú pháp câu lệnh if else trong Python

Cú pháp if else:

if expression:
    #statement
else :
    #statement

Cú pháp if else lồng nhau:

if expression1:
    if expression2:
        #statment
    #statment
else :
    #statment

Cú pháp Elif

Nghe Elif có vẻ hơi khác thường nhỉ cool, thông thường trong các ngôn ngữ PHP, C, C++ thì else if  chứ ko giống Python (Elif)

if expression1:
    #statement
elif expression2 :
    #statement

Như vậy trong Python ta không dùng cặp dấu ngoặc () để bao quanh điều kiện trong mệnh đề if, và ta cũng không dùng cặp dấu {} để bao quanh khối lệnh của mệnh đề if mà thay vào đó ta dùng dấu hai chấm (:) ở đầu để khai báo bắt đầu đoạn code và kết thúc không có gì cả.

Ví dụ: if else

bien= 100;
if bien == 100:
    print("Gia tri cua bien = 100");
else :
    print("Gia tri cua bien khac 100");
Ví dụ: if else lồng nhau

bien= 100;
#Cau if thu nhat
if bien == 100:
    ten = "thehalfheart";

    # Cau if thu hai
    if ten == "thehalfheart":
        print("Gia tri cua ten la thehalfehart");
    print("Gia tri cua bien = 100");
else :
    print("Gia tri cua bien khac 100");

Ví dụ: elif

bien = 101;
if bien == 100:
    print("Gia tri bien = 101");
elif bien == 101 :
    print("Gia tri cua bien khac 101");

Ta thấy lệnh if else trong python không có ký tự đánh dấu một khối, như vậy thì điểm dừng của nó ở đâu? Để trả lời ta qua phần 2 nhé.

Lưu y: Trong Python các đoạn code được hiểu là một khối nếu nó cùng một tab (thẳng hàng từ trên xuống) cho tới khi gặp tab ngắn hơn, nên nếu bạn tự ý tab vào thì trình biên dịch sẽ báo lỗi ngay.

2. Làm sao xác định kêt thúc lệnh if else trong Python

Để báo cho trình biên dịch biết đoạn code nằm ngoài một khối lệnh nào đó thì ta sẽ tap thụt ngoài 1 ô, nghĩa là trong Python các lệnh được bao khối bởi cấu trúc cây (cây nằm sâu là con của cây ngoài). Xem hình minh họa dưới đây:


Các đường màu đỏ mô phỏng các đoạn code cùng cấp trong python

Ví dụ 1: Không thụt vào 1 tab nên bị hiểu nhầm là nằm trong khối else

bien = 101;
if bien == 101:
    print("Gia tri bien = 101");
else :
    print("Gia tri cua bien khac 101");
    print("Doan code ngoai lenh if else");
Kết quả:

Ví dụ 2: Thụt vào 1 tab nên trình biên dịch hiểu dòng cuối cùng không nằm trong khối if else.

bien = 101;
if bien == 101:
    print("Gia tri bien = 101");
else :
    print("Gia tri cua bien khac 101");
print("Doan code ngoai lenh if else");
Kết quả:

if else long nhau

3. Kết luận

Tới bài này mình cảm thấy Python bắt đầu thú vị rồi đấy, các cú pháp code của nó không giống như C hay C++ mà theo một cách riêng biệt. Nếu bạn mới học lập trình thì không sao chứ bạn nào mà học qua các ngôn ngữ kia rồi thì sẽ cảm thấy Python khó chịu vì khó quản lý code. Tuy nhiên bản thân mình thấy nó rất khắt khe trong việc code, bạn không thể tự mình thụt vào (tab) mà phải tuân theo quy luật của nó.

Hãy để lại link bài viết gốc khi chia sẻ bài viết này, mình sẽ report DMCA với những website lấy nội dung mà không để nguồn hoặc copy bài với số lượng lớn.

Nguồn: freetuts.net

Profile photo of adminTheHalfHeart

TheHalfHeart

Có sở thích viết tuts nên đã từng tham gia viết ở một số diễn đàn, đến năm 2014 mới có điều kiện sáng lập ra freetuts.net. Sinh năm 90 và có 1 vợ 2 con, thích ca hát và lập trình.

ĐĂNG BÌNH LUẬN: Đăng câu hỏi trên Facebook để được hỗ trợ nhanh nhất.