Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Sử dụng câu lệnh else có điều kiện với vòng lặp for trong Python

Trong bài viết này, chúng ta sẽ học về câu lệnh loop-else trong Python 3.x hoặc các phiên bản trước đó. Trong hướng dẫn này, chúng ta sẽ tập trung vào cách thực thi của vòng lặp for & câu lệnh else.

Trong các ngôn ngữ khác, chức năng else chỉ được cung cấp trong cặp if-else. Nhưng Python cho phép chúng ta triển khai chức năng else với vòng lặp for cũng.

Chức năng else chỉ có sẵn để sử dụng khi vòng lặp kết thúc bình thường. Trong trường hợp kết thúc buộc của vòng lặp, câu lệnh else bị bỏ qua bởi trình thông dịch và do đó việc thực thi nó bị bỏ qua.

Bây giờ hãy nhìn nhanh qua một số minh họa để hiểu câu lệnh loop-else tốt hơn.

MINH HỌA 1: Cấu trúc For-Else với kết thúc bình thường

Ví dụ

for i in ['T', 'P']:
    print(i)
else: # Câu lệnh loop-else
    print("Câu lệnh loop-else thực thi thành công")

Kết quả

T
P
Câu lệnh loop-else thực thi thành công

MINH HỌA 2: Cấu trúc For-Else với kết thúc buộc

Ví dụ

for i in ['T', 'P']:
    print(i)
    break
else: # Câu lệnh loop-else
    print("Câu lệnh loop-else thực thi thành công")

Kết quả

T

Giải thích − Câu lệnh loop-else được thực thi trong MINH HỌA 1 vì vòng lặp for kết thúc bình thường sau khi hoàn thành lặp qua list['T','P']. Nhưng trong MINH HỌA 2, câu lệnh loop-else không được thực thi vì vòng lặp bị kết thúc buộc bằng câu lệnh nhảy như break.

Các MINH HỌA này chỉ ra rõ ràng câu lệnh loop-else không được thực thi khi vòng lặp bị kết thúc buộc.

Bây giờ hãy xem một minh họa mà trong một số điều kiện câu lệnh loop-else được thực thi và trong một số không.

Ví dụ

def pos_neg_test():
    for i in [5, 6, 7]:
        if i >= 0:
            print("Số dương")
        else:
            print("Số âm")
            break
    else:
        print("Loop-else Executed")

# Hàm main
pos_neg_test()

Kết quả

Số dương
Số dương
Số dương
Loop-else Executed

Giải thích − Ở đây khối else trong cấu trúc if-else không được thực thi vì điều kiện if đánh giá là true, câu lệnh Loop-Else được thực thi.

Nếu chúng ta thay thế list trong vòng lặp for [5, 6, 7] bằng [7, -1, 3] thì đầu ra thay đổi thành:

Kết quả

Số dương
Số âm

Kết luận

Trong bài viết này, chúng ta đã tìm hiểu về triển khai câu lệnh loop-else và nhiều cách khác nhau mà nó có thể được triển khai.