循環在 python 中很重要,因為沒有它們,我們將不得不一遍又一遍地重復指令,這對程序員來說可能很耗時。 while 循環僅評估給定條件,如果為真,則執行一組語句,直到該條件為真。但是如果問題的復雜性增加了,那麼就有必要在另一個while循環中插入一個while循環。因此,在本教程中,您將了解 Python 中的嵌套 while 循環。
Python 嵌套 While 循環的語法;嵌套while循環的基本語法如下:
#outer while loop while condition: #inner while loop while condition: block of code block of code
嵌套的 while 循環包含兩個基本組件:
外部 while 循環可以包含多個內部 while 循環。這裡的條件產生一個布爾值,如果它為真,那麼只有循環才會被執行。對於外循環的每次迭代,內循環都從頭開始執行,這個過程一直持續到外循環的條件為真。類似地,只有當它的條件為真並且代碼塊被執行時,內部的 while 循環才會被執行。
首先,評估外循環條件。如果為假,則控制跳轉到外部 while 循環的末尾。如果條件為真,則控制跳轉到內部 while 循環條件。接下來,評估內部 while 循環條件。如果為假,則控制跳回外部 while 循環條件。如果為真,則執行內部 while 循環內的代碼塊。
嵌套 while 循環的簡單示例
在此示例中,我們使用嵌套的 while 循環創建數字模式
i=1
while i<=5:
j=1
while j<=i:
print(j,end=" ")
j=j+1
print("")
i=i+1
Output:
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
在上面的代碼中,外部 while 循環跟蹤模式內的每個新行,內部 while 循環根據條件顯示數字。
示例, if i=2
外循環:-
內循環:-
問題陳述
考慮一個在線問答游戲,用戶必須寫出給定單詞的同義詞,並且只有 3 次正確嘗試問題的機會。
synonyms=['pretty','alluring','lovely']
counter=3
while counter>0:
answer=input("What is the synonym of 'Beautiful': ")
status=True
i=0
while i<len(synonyms):
if(synonyms[i]==answer):
print("Correct!!")
counter=-1
break
else:
status=False
i=i+1
if(status==False):
print("Incorrect!!")
counter=counter-1
print(f"You have {counter} chances")
Output:
What is the synonym of 'Beautiful': ugly Incorrect!! You have 2 chances What is the synonym of 'Beautiful': bad Incorrect!! You have 1 chances What is the synonym of 'Beautiful': pretty Correct!!
在上面的代碼中,我們使用了一個計數器變量來存儲嘗試的次數,並且外部的 while 循環驗證只給了用戶 3 次嘗試。我們還有一個名為同義詞的列表,用於存儲問題的有效答案。內部的 while 循環遍歷列表並檢查用戶是否提供了正確的答案。如果提供的答案是正確的,那麼它只是從內部循環中中斷並退出程序,因為計數器變量等於 -1。如果答案不正確,則計數器變量遞減並再次執行內部 while 循環,直到計數器變量變為零。