[英]Python running elif block, when the if block is true
為什么即使 if 已經為真,elif 語句仍然執行
s=input("Enter the string: ")
c=3
while True:
if s[0]=="a":
s=s[2:]
elif s[-1]=="b":
s=s[:2]
else:
c+=1
break
print(s)
print(c)
輸出:
Enter the string: aaccbb
ccbb
3
cc
3
它只能在運行的選項之一的if
語句,但它多次,因為你循環做這個決定:
if
塊在循環的第一次迭代中運行,因為字符串是aabbcc
。 這會將字符串更改為ccbb
。ccbb
因此elif
塊運行並將字符串更改為cc
。cc
因此else
塊會運行,因此您會中斷循環。 在任何階段,循環的單次迭代都不會執行多個選擇的if
語句。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.