具有多個條件的 Python while 迴圈

Lakshay Kapoor 2023年1月30日
  1. 使用 andor 邏輯運算子建立具有多個條件的 Python while 迴圈
  2. 使用 not 邏輯運算子建立具有多個條件的 Python while 迴圈
具有多個條件的 Python while 迴圈

Python 中的 while 迴圈是一個迴圈,它幫助執行程式碼直到 while 語句中的條件,即測試條件變為真。當使用者事先不知道要執行的迭代次數時,將使用此迴圈。在許多情況下,while 迴圈用於多個條件。

在本教程中,我們將看到如何使用具有多個條件的 while 迴圈。

使用 andor 邏輯運算子建立具有多個條件的 Python while 迴圈

and 邏輯運算子首先計算整個表示式,然後根據該計算返回結果。如果兩個條件中的任何一個不滿足或不為真,則該語句將被視為錯誤,並且程式碼將不會執行。

例子:

x = 10
y = 20
initial_count = 0
while initial_count < x and initial_count < y:
    print(f"count: {initial_count}, x = {x}, y = {y}")
    initial_count += 1

輸出:

count: 0, x = 10, y = 20
count: 1, x = 10, y = 20
count: 2, x = 10, y = 20
count: 3, x = 10, y = 20
count: 4, x = 10, y = 20
count: 5, x = 10, y = 20
count: 6, x = 10, y = 20
count: 7, x = 10, y = 20
count: 8, x = 10, y = 20
count: 9, x = 10, y = 20

在這種方法中,我們首先使兩個變數 x 和 y 分別等於 10 和 20。然後我們將計數初始化為零。完成所有這些之後,我們從我們的 while 迴圈開始,它產生兩個條件,如上面的程式碼所示。最後,邏輯運算子開始發揮作用。該運算子首先將使用者建立的兩個條件合二為一,然後將這兩個條件作為一個整體進行檢查。如果兩個條件都為真,則迴圈執行;否則,它不會。此外,此運算子在發現第一個語句為真後停止計算。在這種情況下,迴圈在計數 10 後停止工作。

讓我們繼續討論 or 邏輯運算子。就像 and 邏輯運算子一樣,or 運算子也評估給定的條件,然後將這兩個條件組合為一個條件。使用這個運算子的好處是,即使兩個條件語句之一為真,程式碼也會執行。如果這兩個語句都為假,則程式碼將不會執行。

例子:

x = 10
y = 20
initial_count = 0
while initial_count < x or initial_count < y:
    print(f"count: {initial_count}, x = {x}, y = {y}")
    initial_count += 1

輸出:

count: 0, x = 10, y = 20
count: 1, x = 10, y = 20
count: 2, x = 10, y = 20
count: 3, x = 10, y = 20
count: 4, x = 10, y = 20
count: 5, x = 10, y = 20
count: 6, x = 10, y = 20
count: 7, x = 10, y = 20
count: 8, x = 10, y = 20
count: 9, x = 10, y = 20
count: 10, x = 10, y = 20
count: 11, x = 10, y = 20
count: 12, x = 10, y = 20
count: 13, x = 10, y = 20
count: 14, x = 10, y = 20
count: 15, x = 10, y = 20
count: 16, x = 10, y = 20
count: 17, x = 10, y = 20
count: 18, x = 10, y = 20
count: 19, x = 10, y = 20

請注意,在此方法中,迴圈不會在第一條語句之後停止。這是因為運算子發現第二個條件也成立。如果第一個語句為真而第二個語句為假,則迴圈將在計數到 10 後停止。

使用 not 邏輯運算子建立具有多個條件的 Python while 迴圈

還有一種邏輯運算子,我們可以通過它在多個條件下使用 while 迴圈,該運算子稱為 not 運算子。此運算子用於返回布林語句的相反值。例如,如果布林狀態為 not False,則返回 true,如果布林語句為 not True,則返回 false。

例子:

x = 10
y = 20
initial_count = 0
while not initial_count > x and not initial_count > y:
    print(f"count: {initial_count}, x = {x}, y = {y}")
    initial_count += 1

輸出:

count: 0, x = 10, y = 20
count: 1, x = 10, y = 20
count: 2, x = 10, y = 20
count: 3, x = 10, y = 20
count: 4, x = 10, y = 20
count: 5, x = 10, y = 20
count: 6, x = 10, y = 20
count: 7, x = 10, y = 20
count: 8, x = 10, y = 20
count: 9, x = 10, y = 20
count: 10, x = 10, y = 20

此處,while 語句表示如果初始計數不大於 x 且初始計數不大於 y,則僅返回以下程式碼。另外,請注意,邏輯運算 and 也用於上面的程式碼中,這意味著 and 運算子會發現第一個 not 語句為真,而不計算第二個 not 語句。最後,迴圈開始迭代並在計數為 10 時結束。

因此,就像我們僅以 while 迴圈中的兩個條件為例一樣,可以新增更多這樣的語句。

作者: Lakshay Kapoor
Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn

相關文章 - Python Loop