© Maria Vonotna/Shutterstock.com

今天,是時候回顧一下 Python 的另一個遺留屬性了。 While 循環是對程序員最有價值的工具之一,也是任何開發人員的基本功能。

在本文中,我們計劃回顧每個必要的概念,以了解 While 循環的工作原理。我們還將向您展示一些代碼示例,以便您可以更清楚地了解正在發生的事情。雖然循環是一個簡單的概念,但您可以毫不費力地理解它們。

什麼是 While 循環?

While 循環是一種遍歷代碼的方式。雖然循環是一種特殊的循環,但也存在一些其他類型,它們背後的想法略有不同。迭代意味著將代碼語句運行一定次數或直到滿足條件。暫時記住這一點。

當迭代發生特定次數時,稱為確定迭代。否則,我們稱之為無限迭代。

While 循環屬於無限迭代類別。為什麼?因為在達到最終條件之前,它將繼續循環並運行代碼。

這就是您現在需要知道的全部內容。讓我們看一些基本的代碼示例並回顧一下它們的語法。

While 循環語法

要構建 While 循環,我們需要一個條件和一個語句。條件在結構的頭部定義,並確定循環何時停止運行。它們通常是布爾值或由字符串或數字組成的表達式。

一旦聲明了條件,我們就會在語句所在的位置構建一個主體。這部分代碼一直運行到滿足條件為止。

語句可以包含我們想要的任何任務,可以是函數、方法等的組合。主體的最後一項通常是返回。看看這個算法。

while:

這是語法的基本輪廓。這裡,“statement”部分縮進了四個空格,代表循環代碼。

“expression”標籤代表一個變量,該變量在循環開始時立即檢查並繼續變化直到條件這是真的。讓我們回顧一個基本的現實生活示例:

n=10 while (n 15): count +=1 print(n)

在上面的示例中,我們可以理解 While 循環的全部功能。首先,我們聲明一個變量,它將作為循環頭部的條件。因為狀態為真,即數字不大於 15,所以循環運行一次。

然後,語句將我們的變量加 1 並打印數字。因此,1 加 10,得到 11。因為 11 仍然小於 15,所以代碼再次循環,依此類推,直到滿足條件。在這種情況下,當我們的變量號等於 15 時,條件檢查為假,循環停止運行。

While 循環和 Else 語句

我們已經看到了 While 循環是多麼簡單而強大。這是一個簡單的邏輯,但它可以帶來令人難以置信的結果。不過,將 While 循環與其他函數結合起來怎麼樣?

在 Python 中,通常可以將 While 函數與大多數其他本機函數結合起來。出於我們的目的,我們將使用“else”語句,這是程序員熟悉的另一種資源。

if-else 語句通常適用於一個或多個條件,就像 While 循環一樣。這次我們將用“While”替換“If”。因此,當第一個條件不滿足時,else 語句將排在下一個。

讓我們編寫一個使用 While 循環和 else 語句的簡單程序,這樣您就明白了。

count=0 while (count 5): count +=print(“Hello World”) else: print(“Hello World from else 語句”) #Output #Hello World #Hello World #Hello World #Hello World #Hello World from else statement

在上面的例子中,計數從 0 開始並不斷增加,每次循環打印一個字符串。然後,當我們達到 5 時,While 循環停止,else 語句打印我們之前建立的字符串。

如您所見,與大多數基本工具一樣,可能性真的是無窮無盡的。這些簡單的組合,其核心代表簡單的邏輯語句,是大多數應用程序的基礎。

One Line While Loops

作為開發人員,我們總是尋找機會來構建更清潔的和更簡單的代碼。您應該了解一種簡化 While 循環語法的特定方法。

您可以在一行中構建一個 While 循環,僅聲明條件和打印部分。讓我們看看它是如何工作的:

n=10 while n > 0: n-=; print(n)

請注意,此語法可能導致無限循環錯誤,因為我們永遠無法達到停止它的必要條件。用簡單的英語來說,一行 While 循環(如上例中所寫和定義的那樣)永遠不會結束。它會永遠循環下去。

當您發現自己處於這種情況時,請記住您可以使用鍵盤上的組合鍵來終止程序。在 Windows 上,Ctrl + C 會讓您擺脫困境。

如果您遇到這種情況,請不要氣餒。這是一個常見的錯誤,實際上是理解這些函數背後的邏輯的好方法。

但是,在某些情況下,我們可能需要無限循環。因此,根據我們的意圖,無限循環可以是一個特性,而不是一個錯誤!例如,它是構建大多數時間必須在線的服務器的便捷資源,因為服務器將保持運行直到您終止程序。但是,讓我們在這裡保持正軌。

While 循環與列表

讓我們看看 While 循環如何與列表結合:

numbers=[1, 2, 3, 4, 5] while numbers: print(numbers.pop()) #Output #5 4 3 2 1

這裡我們製作了一個包含數字的列表,該列表將循環直到沒有更多項目剩下。雖然我們不會在這裡逗留,但您可以將 While 循環與大多數本機函數結合起來,這非常巧妙,我們希望您在完成本文後繼續使用它。

條件部分讀取列表的長度,並且我們已將最後一項確定為第一項打印。這要歸功於 pop() 方法。

pop() 方法是 Python 中的一個本地函數,它從列表中刪除並返回最後一項。它適用於“for”循環和 While 循環。

While 循環和控制語句

控制語句是控制 While 循環迭代的理想方式。它們允許我們通過終止或中斷循環的正常流程來修改循環的工作方式。

在當前的 Python 版本中,我們有兩個控制語句:

首先是“continue”語句。它停止當前迭代並將我們發送到循環的開頭。重新評估條件,開始新的重複。

這是一個帶有 Continue 語句的 While 循環示例:

i=0 a=’Hello World’while i len(a): if a[i]==’o’: i +=1 continue print(a[i]) i +=1 #Output: H e ll W r l d

注意我們調用了 len() 函數。它允許我們計算項目的數量並返回這個值。在這種情況下,它返回字符串中的字符數。

還有“Break”語句。 break 語句完全停止循環運行,如下所示:

i=0 a=’Hello World’while i len(a): if a[i]==’l’: i +=1 break print (a[i]) i +=1 #Output: H e

最後,我們有“pass”語句。它通常用於沒有語句、函數或方法的空循環。

i=0 a=’Hello World’while i len(a): i +=1 pass print(i) #Output: 11

所有這些控制語句讓我們可以自定義 While 循環內發生的大部分事情。您可以看到這在處理大量數據或使用 AI 時有何用處。

While 循環的優點是什麼?

While 循環的主要優點是您可以在其上構建整個應用程序。它們的功能非常基礎,您會發現自己總是在使用它們。

到目前為止,我們已經了解了 While 循環的工作原理以及如何將它與其他函數結合使用。代碼示例非常簡單,所以讓我們試著把代碼寫得複雜一點。

在 Python 中,可以將一個或多個語句相互嵌套。嵌套適用於 if-else 語句、While 循環和其他控制結構。

a=[‘Hello’,’World’] while len(a): print(a.pop(0)) b=[‘Puthon’,’Rules’] while len(b): print(‘>’, b.pop(0)) #Output: Hello Python Rules World Python Rules

在這個例子中,我們創建了一個評估條件的複雜結構並打印每個字符串。我們還利用了之前介紹的 pop() 函數。

這個程序只是另一個可以使用 While 循環實現的示例。它們本身就很強大,但是當您將其他方法和函數添加到組合中時,一切都會進入另一個層次。

結論:解釋 Python 中的 While 循環

在本文中,您了解了 While 循環的工作原理、語法和一些用例。有了這些知識,您應該能夠掌握 While 循環的概念並在需要時實施它們。

我們還研究了迭代、控制語句、else 語句和無限循環。

這些都是製作複雜而有用的應用程序所必需的功能,使用重複代碼作為主要的基本思想。如需了解更多信息,我們建議您查看 Python 的官方文檔。現在,我們讓您自己嘗試這些東西,看看它們能帶您到哪裡去。

While Loops In Python Explained FAQs(常見問題解答)

如果出現無限循環錯誤,我該怎麼辦?

不要驚慌!在大多數 python 編譯器中,CTRL + C 應該終止任何正在運行的代碼。使用編譯器的工具來導航和調試您的代碼。

While 循環是否僅在 Python 中可用?

否。雖然循環以一種或另一種形式在大多數編程語言中可用。它們是面向對象編程的一個特徵,因為它們代表了一個基本的邏輯功能。您會在 Java、Javascript 和其他流行的編程語言中找到類似的本機函數。

我可以將其他函數與 While 循環結合使用嗎?

可以!就像 Python 中的其他原生函數一樣,While 循環可以與 Python 中幾乎所有其他原生函數結合使用。

For 循環和 While 循環之間有什麼區別?

For 循環是有限迭代組的一部分,其中迭代或重複次數在代碼中的某處指定。另一方面,While循環是一種無限迭代結構,因為循環重複的次數沒有定義。

什麼是迭代?

在編程中,迭代是將一系列語句重複一定次數的過程。循環是最常見的迭代方式。

By Kaitlynn Clay

我是一名用戶體驗專家。 我對網頁設計和用戶行為分析很感興趣。 在我休息的日子裡,我總是參觀藝術博物館。