[英]Python last line of for loop executed twice
為什么“否”再打印一次? 如何在不使用單獨函數編寫循環的情況下解決問題?
for i in range(2):
if i == 1:
print("yes")
print("no")
結果:
no
yes
no
讓我們看看發生了什么:
當i=0
時,打印no
時i=
,它首先打印yes
,即印刷后no
。
編輯:要修復它,您可以
for i in range(2):
if i == 1:
print("yes")
else:
print("no")
要么,
for i in range(2):
if i == 1:
print("yes")
continue
print("no")
其他print
語句無條件發生; 也就是說,沒有else
可以阻止它再次發射。
您可以通過使用else
來防止它:
for i in range(2):
if i == 1:
print("yes")
else:
print("no")
您還可以使用關鍵字break
進行修復,如下所示:
for i in range(2):
if i==1:
print('yes')
break
print('no')
當i == 1時,可以更好地理解
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.