簡體   English   中英

Python 運行 elif 塊,當 if 塊為真時

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM