Tuyên bố for ... else
được sử dụng để thực hiện vòng tìm kiếm.
Cụ thể, nó xử lý trường hợp vòng tìm kiếm không tìm thấy bất kỳ thứ gì.
for z in xrange(10):
if z == 5:
# We found what we are looking for
print "we found 5"
break # The else statement will not execute because of the break
else:
# We failed to find what we were looking for
print "we failed to find 5"
z = None
print 'z = ', z
đầu ra:
we found 5
z = 5
Đó tìm kiếm cũng giống như
z = None
for z in xrange(10):
if 5 == z:
# We found what we are looking for
break
if z == None:
print "we failed to find 5"
else:
print "we found 5"
print 'z = ', z
Hãy nhớ rằng for
không khởi z nếu danh sách tìm kiếm là rỗng (ví dụ: []
). Đó là lý do tại sao chúng tôi phải đảm bảo rằng z được xác định khi chúng tôi sử dụng nó sau khi tìm kiếm. Sau đây sẽ tăng ngoại lệ vì z
không được xác định khi chúng tôi cố gắng in.
for z in []:
if 5 == z:
break
print "z = ",z
đầu ra
print "z = ",z
NameError: name 'z' is not defined
Tóm lại, mệnh đề else
sẽ thực hiện bất cứ khi nào for
vòng lặp kết thúc một cách tự nhiên. Nếu vi phạm hoặc ngoại lệ xảy ra trong vòng for
, câu lệnh else
sẽ không thực thi.
... hoặc ngoại lệ được ném –
Ồ! Tôi biết điều đó.Cảm ơn rất nhiều. – Jimmy