如何使用 Python if 語句

如果語句是邏輯編程的驅動力。因此,更好地掌握 Python 的if是對 Python 編程技能的重要補充。

你想了解更多關於 Python 的if語句嗎?不用擔心,在這裡,我們將解釋如何使用Python的if條件來控制您的程序。

Python 中的 if 語句如何工作

通常,Python 中的條件語句以if開頭,如果沒有它,它們就完全不合邏輯。但是,條件是一組程序員定義的規則,用於檢查特定事件是真還是假。本質上,它們檢查事件的有效性。

Python 中的if語句通常採用以下格式:

if an event is True: Execute some commands...

儘管if語句可以獨立存在,但其他條件(如elifelse可以支持它以放置其他規則。但是,您也可以Python的if條件中使用諸如notandor、 and in 之類的語句。

Python 還允許您直接將if語句與控制流(如for循環)一起使用。在下面的示例中,讓我們看看如何在這些情況下使用if語句。

如何使用 Python 的 if 和 if...else 語句

使用if條件,您可以告訴 Python 執行一組命令,只要事件為真:

if 5 > 3: print("Valid") Output: Valid

但是,當您需要在第一個命令為 false 時執行另一組命令時,if else條件的組合很有用。讓我們在實踐中看到這一點:

a = 10 b = 3 if a == b: print("They're the same") else: print("They're not the same") Output: They're not the same

您可以通過讓 Python 返回一個布爾值來直接檢查上面兩個變量的相等性。例如,打印a==b返回 False:

a = 10 b = 3 print(a==b) Output: False

如何使用 Python 的 if...elif...else 條件

JavaScript 等編程語言使用else if,而 Python 使用elif。然而,在 Python 中,else通常結束一組條件語句。但是,如果您仍想在結束條件之前驗證其他事件,則需要使用elif語句。讓我們看看下面的 Python elif用例:

a = 10 b = 3 if b == a: print(a + b) elif b * a == 30: print(b - a) else: print("impossible") Output: -7

在上面的代碼中,如果事件為真,Python 會執行if語句中的命令。如果不是,則執行elif語句。否則,它輸出else語句。

您可以使用多個elif和一個else來設置其他條件:

myList = ['Python', 'MUO', 'Hello'] if ('Python') in myList: print("No") elif 'N' in myList[1]: print("MUO") elif 'e' in myList[2]: print("Hello") else: print("None is true") Output: Hello

如何在 Python 中使用“in”、“and”和“or”關鍵字,如果

您可以在if語句中使用in關鍵字來檢查項目是否存在於列表或數組中:

myList = ['Python', 'MUO', 'Hello'] if ('Python') in myList: print("It's in the list") Output: It's in the list

您還可以將and表達式與if 結合使用來檢查多個項目:

myList = ['Python', 'MUO', 'Hello'] if ('Python' and 'Hello') in myList: print("Hello Python") Output: Hello Python

相關:面向初出茅廬的程序員的 Python RegEx 備忘單

要檢查任一項目是否在列表中,您可以使用or關鍵字:

myList = ['Python', 'MUO', 'Hello'] if ('Python' or 'Bags') in myList: print("One of them is on the list") Output: One of them is on the list

如果使用 for 循環,如何使用 Python

您還可以使用if條件控制for循環中發生的事情。例如,您可以在使用 Python for loop 循環遍歷列表或數組時設置條件。看看下面的示例代碼,看看它是如何工作的:

myList = myList = ['Python', 'MUO', 'Hello'] myList2 = ["Fish", "Gold", "Bag"] if len(myList) == 3: for items in myList: print(items) else: for items2 in myList2: print(items2)

上面的代碼檢查myList的長度是否正好為 3,如果語句為真則循環遍歷它。否則,它執行else語句並輸出myList2 中的每個項目。

但是,您也可以修改該代碼以使用恰好四個字數打印任一列表中的所有項目:

myList = ['Python', 'MUO', 'Hello', 'Books', 'Pizza', 'Four'] myList2 = ["Fish", "Gold", "Bag"] for items in (myList + myList2): if len(items) == 4: print(items)

上面的代碼首先連接兩個列表。然後它檢查兩個列表中是否有恰好四個字數的項目,如果語句為真,則將它們循環出來。

如何在 Python 函數中使用 if 語句

在用 Python 編寫函數時,if條件也可以派上用場。就像在普通代碼中所做的那樣,if條件可以指示函數中發生的事情。

相關:如何在 Python 中創建、導入和重用您自己的模塊

讓我們通過重構上一節中的最後一段代碼來看看如何在 Python 函數中使用if語句和其他條件:

def checkString(list1, list2): for items in (list1 + list2): if len(items) == 4: print(items) break else: print("impossible") List1 = ['Python', 'MUO', 'Hello', 'Books', 'Pizza', 'Four'] List2 = ["Fish", "Gold", "Bag"] checkString(List, List2)

與上一節中的代碼一樣,上述函數輸出所有字數正好為 4 的項目。但是,break語句可確保在打印出滿足條件的最後一項後停止執行。如果if語句中的事件為假,則else條件執行其中的命令。

在 Python 的 Lambda 函數中使用 if 語句

您也可以將 if 語句與匿名 lambda 函數一起使用。您只需要對 Python lambda 函數基本的了解即可執行此操作。

讓我們將上一節中的函數重寫為 lambda 函數,以了解其工作原理:

checkString = lambda a, b: [y for y in (a + b) if len(y) == 4] print(checkString(List1, List2)) Output: ['Four', 'Fish', 'Gold']

上面的 lambda 函數提供與我們在上一節中使用的普通函數相同的輸出。然而,在這裡,我們通過創建 Python 列表推導式來表達代碼。

如何在 Python List Comprehension 中使用 if 語句

也可以在列表推導式中將if語句與for循環一起使用。在這個例子中,讓我們重寫前面的代碼來打印列表推導式中具有四個字數的所有項目:

myList = ['Python', 'MUO', 'Hello', 'Books', 'Pizza', 'Four'] myList2 = ["Fish", "Gold", "Bag"] lis = [lists for lists in (myList + myList2) if len(lists) is 4] print(lis) Output: ['Four', 'Fish', 'Gold']

相關:如何使用 Python 列表推導式(以及何時不使用它們)

您還可以在列表推導式中使用if...andif...or。首先,讓我們看看if...or在 Python 列表推導式中的用例:

myList = ['Python', 'MUO', 'Hello', 'Books', 'Pizza', 'Four'] myList2 = ["Fish", "Gold", "Bag"] lis = [lists for lists in (myList + myList2) if ('P' in lists or 'F' in lists)] print(lis) Output: ['Python', 'Pizza', 'Four', 'Fish']

代碼檢查其中是否有帶有字母“P”或“F”的項目,如果語句為真則輸出它們。

我們還可以使用if...and打印同時包含字符串 "P" 和 "o" 的項目:

lis = [lists for lists in (myList + myList2) if ('P' in lists and 'o' in lists)] print(lis) Output: ['Python']

上面的代碼僅輸出“Python”,因為它是列表中唯一同時具有“P”和“o”的項目。

如何在 Python List Comprehension 中使用 Nested if

在某些情況下,您還可以在列表推導式中使用嵌套的if條件。讓我們看一個列表推導式的示例,該示例使用嵌套的if條件輸出所有可以整除 3 和 5 的數字:

B = range(31) A = [x for x in B if x % 3 == 0 if x % 5 ==0] print(A) Output: [0, 15, 30]

但是,您可以使用集合推導而不是列表來執行上述代碼所做的操作。但是這一次,您將輸出作為集合文字:

A = {x for x in B if x % 3 == 0 if x % 5 ==0} print(A) Output: {0, 30, 15}

隨意使用其他列表理解示例,將它們也更改為設置理解。

邏輯語句控制許多自動化程序

邏輯語句是當今許多編碼程序的構建塊,對於在 Python 上運行的程序來說,這並沒有什麼不同。然而,正如我們之前所說的,條件語句可以讓您更好地掌握代碼,因此您可以按照自己的方式進行調整。

遊戲開發、機器學習和 Web 開發等現實項目依賴於這些用於任務自動化的條件語句,使它們能夠為用戶提供所需的輸出。因此,作為即將到來的程序員,了解更多關於它們以及它們如何工作的信息對於編寫動態且響應迅速的現代技術程序是必要的。


如何使用 Python 作為命令行計算器

如何使用 Python 作為命令行計算器

雖然您可以在計算機上使用圖形計算器,但 Python 編程語言解釋器可以兼作桌面計算器。它在 Python 社區中非常流行,以至於官方教程中都提到了它。下面介紹如何將 Python 用作計算器。

面向程序員的 8 個最佳 Java 博客

面向程序員的 8 個最佳 Java 博客

作為程序員,你應該接受挑戰才能生存,並在開發或編程領域創造一些奇蹟。因此,如果您正在尋求學習高級編程語言以提高您的職業技能,Java 是最好的前景之一。

初學者開始使用 Python 的 7 個重要命令

初學者開始使用 Python 的 7 個重要命令

如果您有一個全面的路線圖,詳細說明初學者應學習哪些概念以及如何進一步進步以達到下一個里程碑,那麼學習 Python 等新編程語言將變得輕而易舉。即使是中級程序員也應該經常複習他們的基礎知識,為自己打下堅實的基礎。

響應式網頁設計原則

響應式網頁設計原則

如今,構建一個根據瀏覽器或設備調整其用戶界面的網站或應用程序是一種常見的做法。有兩種方法可以實現這一目標。第一個涉及為不同的設備創建不同版本的網站或應用程序。但它效率低下,並可能導致不可預測的錯誤。

如何使用 C++、Python 和 JavaScript 計算數字中的位數

如何使用 C++、Python 和 JavaScript 計算數字中的位數

處理數字是編程的一個組成部分。每種編程語言都支持以多種不同方式操作數字。在本文中,您將學習如何使用迭代、基於日誌和基於字符串的方法查找整數中的總位數。

用於容器管理的 9 個最佳 Docker 替代方案

用於容器管理的 9 個最佳 Docker 替代方案

容器對於虛擬環境中的軟件開發、部署和管理非常有益。Docker 在容器化過程中很有用,但它不是唯一的平台。如果您正在尋找 Docker 的替代品,那就別無所求。此列表展示了一些功能豐富且高效的 Docker 替代方案,可用於您的下一個項目。

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

如何在您的 WordPress 帖子中嵌入推文

如何在您的 WordPress 帖子中嵌入推文

在您的 WordPress 帖子中嵌入第三方服務是一種吸引訪問者興趣的令人興奮的方式。嵌入的內容還提供了使掃描更容易的視覺提示。WordPress 使添加此類內容變得容易。

如何使用 npkill 刪除節點模塊文件夾

如何使用 npkill 刪除節點模塊文件夾

Node.js 是一個 JavaScript 運行時環境,允許您在 Web 瀏覽器之外運行 JavaScript,使其成為開發各種應用程序的流行選擇。它的流行部分是由於大量的 NPM 包可以簡化開發人員的體驗。

如何編寫和編譯你的第一個 Solidity 代碼

如何編寫和編譯你的第一個 Solidity 代碼

Solidity 是以太坊區塊鏈上智能合約使用的編程語言。它是一種靜態類型的、面向對象的編程語言。

前 5 大徽章將增強您的 GitHub 存儲庫

前 5 大徽章將增強您的 GitHub 存儲庫

GitHub 徽章可以通過為用戶提供一種快速的方法來捕獲存儲庫指標來提高存儲庫的可讀性。徽章可以嵌入到您的 README.md 中,以向其他開發人員闡明您的項目的重要性和必要性。因此,讀者可以通過檢查附加的徽章快速了解存儲庫。

什麼是國際程序員節?今年的 3 種慶祝方式

什麼是國際程序員節?今年的 3 種慶祝方式

國際慶祝日是對社會事務、歷史日子和各自職業給予認可的好方法。國際程序員日慶祝程序員在改善日常生活方面所發揮的作用。我們生活的文明世界是程序員辛勤工作的產物。

Python String format() 方法如何工作?10個例子

Python String format() 方法如何工作?10個例子

無論是數據庫查詢還是數學運算的結果,Python 字符串格式方法都提供了一種更加動態和吸引人的方式來向用戶呈現結果。

Visual Studio 2022 與 2019:您現在應該升級嗎?解釋

Visual Studio 2022 與 2019:您現在應該升級嗎?解釋

今年早些時候,微軟向狂野的編程世界發布了 Visual Studio 2022 的預覽版。這是個好消息!這是一個非常受歡迎的 IDE,但考慮到它蓬勃發展的 DevOps 生態系統的變化速度,它需要進行調整甚至大修。

軟件度量的簡單介紹

軟件度量的簡單介紹

軟件度量是用於量化軟件各個方面的度量。這些方面可以包括開發團隊的成本、質量和效率。

如何在 Windows 10 上安裝 .NET Framework 3.5 版

如何在 Windows 10 上安裝 .NET Framework 3.5 版

作為 Windows 用戶,您可能至少遇到過 .NET Framework 這個詞。它是 Microsoft 開發的軟件框架,可讓您構建和運行 C#、C++、F# 和 Visual Basic 程序。最新的 .NET 版本是 4.8,但您的計算機可能需要舊版本的 .NET(如 .NET 3.5)才能運行某些應用程序。

Flask 或 CherryPy:您應該使用哪種 Python 框架?

Flask 或 CherryPy:您應該使用哪種 Python 框架?

如果您是 Python 開發人員,您可以從一系列可用的框架中受益匪淺。雖然有些框架最適合大型生態系統,但其他框架則專門服務於特定的發展目標。繼續閱讀以了解兩個 Python 框架 Flask 和 CherryPy 之間的基本特性、用法和區別。

如何使用 Python、C++ 和 JavaScript 查找 N 位完美立方體和正方形

如何使用 Python、C++ 和 JavaScript 查找 N 位完美立方體和正方形

許多程序員喜歡使用代碼解決棘手的數學問題。它有助於提高頭腦和提高解決問題的能力。在本文中,您將學習如何使用 Python、C++ 和 JavaScript 找到最小和最大的 n 位完美正方形和立方體。每個示例還包含幾個不同值的示例輸出。

如何將 Python 添加到 Windows PATH 變量

如何將 Python 添加到 Windows PATH 變量

從終端運行 Python 通常是不可避免的。但是,如果您是第一次在 Windows 10 上安裝 Python,則只有將其添加到 Windows PATH 環境變量中,才能通過 Windows 終端運行它。

如何使用 Python 作為命令行計算器

如何使用 Python 作為命令行計算器

雖然您可以在計算機上使用圖形計算器,但 Python 編程語言解釋器可以兼作桌面計算器。它在 Python 社區中非常流行,以至於官方教程中都提到了它。下面介紹如何將 Python 用作計算器。

面向程序員的 8 個最佳 Java 博客

面向程序員的 8 個最佳 Java 博客

作為程序員,你應該接受挑戰才能生存,並在開發或編程領域創造一些奇蹟。因此,如果您正在尋求學習高級編程語言以提高您的職業技能,Java 是最好的前景之一。

初學者開始使用 Python 的 7 個重要命令

初學者開始使用 Python 的 7 個重要命令

如果您有一個全面的路線圖,詳細說明初學者應學習哪些概念以及如何進一步進步以達到下一個里程碑,那麼學習 Python 等新編程語言將變得輕而易舉。即使是中級程序員也應該經常複習他們的基礎知識,為自己打下堅實的基礎。

響應式網頁設計原則

響應式網頁設計原則

如今,構建一個根據瀏覽器或設備調整其用戶界面的網站或應用程序是一種常見的做法。有兩種方法可以實現這一目標。第一個涉及為不同的設備創建不同版本的網站或應用程序。但它效率低下,並可能導致不可預測的錯誤。

如何使用 C++、Python 和 JavaScript 計算數字中的位數

如何使用 C++、Python 和 JavaScript 計算數字中的位數

處理數字是編程的一個組成部分。每種編程語言都支持以多種不同方式操作數字。在本文中,您將學習如何使用迭代、基於日誌和基於字符串的方法查找整數中的總位數。

用於容器管理的 9 個最佳 Docker 替代方案

用於容器管理的 9 個最佳 Docker 替代方案

容器對於虛擬環境中的軟件開發、部署和管理非常有益。Docker 在容器化過程中很有用,但它不是唯一的平台。如果您正在尋找 Docker 的替代品,那就別無所求。此列表展示了一些功能豐富且高效的 Docker 替代方案,可用於您的下一個項目。

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

如何在您的 WordPress 帖子中嵌入推文

如何在您的 WordPress 帖子中嵌入推文

在您的 WordPress 帖子中嵌入第三方服務是一種吸引訪問者興趣的令人興奮的方式。嵌入的內容還提供了使掃描更容易的視覺提示。WordPress 使添加此類內容變得容易。

如何使用 npkill 刪除節點模塊文件夾

如何使用 npkill 刪除節點模塊文件夾

Node.js 是一個 JavaScript 運行時環境,允許您在 Web 瀏覽器之外運行 JavaScript,使其成為開發各種應用程序的流行選擇。它的流行部分是由於大量的 NPM 包可以簡化開發人員的體驗。

如何編寫和編譯你的第一個 Solidity 代碼

如何編寫和編譯你的第一個 Solidity 代碼

Solidity 是以太坊區塊鏈上智能合約使用的編程語言。它是一種靜態類型的、面向對象的編程語言。