Python - 巢狀迴圈



在 Python 中,當你在迴圈語句中編寫一個或多個迴圈時,這被稱為巢狀迴圈。主迴圈被認為是外迴圈,外迴圈內部的迴圈被稱為內迴圈。

Python 程式語言允許在一個迴圈內使用另一個迴圈。一個迴圈是一個程式碼塊,它重複執行特定的指令。有兩種型別的迴圈,即 for 和 while,我們可以用它們來建立巢狀迴圈。

你可以在任何型別的迴圈內放入任何型別的迴圈。例如,for 迴圈可以在 while 迴圈內,反之亦然。

Python 巢狀 for 迴圈

具有一個或多個內部 for 迴圈的for 迴圈稱為巢狀 for 迴圈。for 迴圈用於迴圈遍歷任何序列(例如列表、元組或字串)的專案,並對序列的每個專案執行相同的操作。

Python 巢狀 for 迴圈語法

Python 程式語言中 Python 巢狀 for 迴圈語句的語法如下:

for iterating_var in sequence:
   for iterating_var in sequence:
      statements(s)
   statements(s)

Python 巢狀 for 迴圈示例

下面的程式使用巢狀 for 迴圈迭代 months 和 days 列表。

months = ["jan", "feb", "mar"]
days = ["sun", "mon", "tue"]

for x in months:
  for y in days:
    print(x, y)

print("Good bye!")

執行上述程式碼後,會產生以下結果:

jan sun
jan mon
jan tue
feb sun
feb mon
feb tue
mar sun
mar mon
mar tue
Good bye!

Python 巢狀 while 迴圈

具有一個或多個內部 while 迴圈的while 迴圈是巢狀 while 迴圈。while 迴圈用於重複執行一段程式碼未知次數,直到指定的布林表示式為 TRUE。

Python 巢狀 while 迴圈語法

Python 程式語言中巢狀 while 迴圈語句的語法如下:

while expression:
   while expression:
      statement(s)
   statement(s)

Python 巢狀 while 迴圈示例

下面的程式使用巢狀 while 迴圈查詢 2 到 100 之間的素數:

i = 2
while(i < 25):
   j = 2
   while(j <= (i/j)):
      if not(i%j): break
      j = j + 1
   if (j > i/j) : print (i, " is prime")
   i = i + 1

print ("Good bye!")

執行上述程式碼後,會產生以下結果:

2 is prime
3 is prime
5 is prime
7 is prime
11 is prime
13 is prime
17 is prime
19 is prime
23 is prime
Good bye!
廣告