在這篇文章中,我們將了解「for」迴圈和「while」迴圈之間的差異。
for 迴圈是一種控制流程語句,它執行預先定義迭代次數的程式碼。這個控制流程語句中使用的關鍵字是「for」。當迭代次數已知時,使用 for 迴圈。
for迴圈分為兩部分 -
標題 - 這部分指定循環的迭代。在標頭部分中,也聲明了循環變量,它告訴主體正在執行哪個迭代。
主體 - 主體部分包含每次迭代執行的語句。
初始化、條件檢查和迭代語句都寫在迴圈的開頭。
只有在預先知道迭代次數時才使用它。
如果「for」迴圈中未提及條件,則迴圈將迭代無限次。
初始化只進行一次,並且不會重複。
迭代語句寫在開頭。
因此,一旦迴圈中的所有語句都執行完畢,它就會執行。
for(initialization; condition; iteration){ //body of the 'for' loop }
以下程式使用 for 迴圈列印所有清單元素 -
# input list inputList = [10, 20, 30, 40, 50] print("Input list elements:") # traversing through all elements of the list using for loop for element in inputList: # printing each element of the list print(element)
執行時,上述程式將產生以下輸出 -
Input list elements: 10 20 30 40 50
針對給定的真條件執行單一語句或一組語句的迴圈。此循環由關鍵字“while”表示。當迭代次數未知時,使用「while」迴圈。重複該語句直到布林值為假。由於條件是在 while 迴圈開始時測試的,因此也稱為預測試迴圈。
初始化和條件檢查在循環開始時完成。
僅在迭代次數未知時使用。
如果「while」迴圈中未提及條件,則會導致編譯錯誤。
如果在檢查條件時完成初始化,則每次迭代循環時都會發生初始化。
迭代語句可以寫在迴圈內的任一點內。
while ( condition) { statements; //body of the loop }
以下程式使用 for 迴圈列印所有清單元素 -
# Initializing a dummy variable with 1 i = 1 # Iterate until the given condition is true while i < 10: # printing the current value of the above variable print(i) # incrementing the value of i value by 1 i += 1
執行時,上述程式將產生以下輸出 -
1 2 3 4 5 6 7 8 9
當我們知道迭代次數(即一語句必須執行多少次)時,就會使用 for 迴圈。這就是為什麼當我們初始化 for 迴圈時,我們必須定義終點。
當迭代次數未知時,使用 while 迴圈。當我們需要根據重複次數以外的條件結束循環時,可以使用它。在這種情況下,沒有必要提前了解情況。這就是為什麼我們可以在循環的初始化中使用布林表達式。
如果 for 和 while 迴圈中沒有指定條件,則迴圈將無限迭代。
在沒有條件的情況下,以下是 for 迴圈和 while 迴圈之間的差異 -
For Loop - 在下面的範例中,循環將運行無限次。
l = [1] for m in l: print("TutorialsPoint") l.append(m)
執行時,上述程式將產生以下輸出 -
TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint . . . . runs infinite times
我們從一個列表開始,並使用單一隨機值對其進行初始化。然後,使用 for 迴圈和 in 運算符,我們遍歷了列表的元素。在循環內部,它將列印一些隨機文本,然後我們將另一個元素添加到列表中,因此 for 循環會因為新元素而再次執行。這樣循環就會被執行無限次。
While 迴圈 - 在下面的範例中,迴圈將運行無限次。
while True: print("TutorialsPoint")
執行時,上述程式將產生以下輸出 -
TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint . . . . runs infinite times
比较基础 | For循环 | While循环 |
---|---|---|
关键字 | 使用for关键字 | 使用while关键字 |
已使用 | 当迭代次数已知时,使用 For 循环。 | 当迭代次数未知时使用While循环。 |
不存在条件 | 不存在条件时循环无限次运行 | 在不存在条件的情况下返回编译时错误 |
初始化的性质 | 一旦完成,不可重复 | 在while循环中,每次迭代都可以重复。 |
函数 | 要进行迭代,请使用 range 或 xrange 函数。 | while循环中没有这样的函数。 |
基于迭代的初始化 | 在循环开始时完成。 | 在 while 循环中,可以在循环体中的任何位置执行此操作。 |
生成器支持 | Python 的 for 循环可以迭代生成器。 | While 循环不能直接在生成器上迭代。 |
速度 | for 循环比 while 循环更快。 | 与 for 循环相比,While 循环相对较慢。 |
在本文中,我们通过示例了解了 for 和 while 循环之间的区别,以及 while 和 for 循环的工作原理。
以上是在Python中,for迴圈和while迴圈之間的差異是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!