在 Python 中的一行中巢狀 for 迴圈

Rana Hasnain Khan 2023年1月30日
  1. 使用 Python 中的列表推導在一行中巢狀 for 迴圈
  2. 在 Python 中使用 exec() 函式在一行中巢狀 for 迴圈
  3. 概括
在 Python 中的一行中巢狀 for 迴圈

for 迴圈是最常用的從列表中迭代專案的迴圈之一。在 Python 中,我們在一行中編寫了 for 迴圈,但是當我們必須在其中使用另一個迴圈時,我們如何將它寫在一行中呢?

本教程將討論一些不同的方法,這些方法可用於在一行中編寫巢狀的 for 迴圈。

使用 Python 中的列表推導在一行中巢狀 for 迴圈

我們可以通過三種方法輕鬆地在一行中編寫巢狀的 for 迴圈。其中之一是列表推導。這是一種建立列表的緊湊方式。

語法:

# python
[print(a, b) for a in listOne for b in listTwo]

讓我們看一個例子並使用列表推導。首先,我們將建立兩個列表,listOnelistTwo,然後使用它們列印結果,如下所示。

# python
listOne = [1, 3, 5]
listTwo = [2, 4, 6]

[print(a + b) for a in listOne for b in listTwo]

輸出:

使用列表推導的巢狀 for 迴圈示例

在示例中,我們使用列表推導在一行中使用巢狀的 for 迴圈新增了 2 個不同的列表。

在 Python 中使用 exec() 函式在一行中巢狀 for 迴圈

現在,我們將討論另一個函式,它可以幫助我們在一行中實現巢狀的 for 迴圈,exec() 函式。它用於動態執行可以是字串或目的碼的 Python 程式。

讓我們看一個例子,我們將新增兩個列表並列印總和,如下所示。

# python
listOne = [1, 3, 5]
listTwo = [2, 4, 6]

exec("for a in listOne:\n    for b in listTwo:\n        print(a+b)")

輸出:

使用 exec() 函式巢狀 for 迴圈示例

從示例中可以看出,使用 exec() 函式,我們在一行中使用巢狀 for 迴圈新增了 2 個不同的列表。

概括

本教程教給我們兩種不同的方法,列表推導和 exec(),可用於將 for 迴圈巢狀在一行中。

Rana Hasnain Khan avatar Rana Hasnain Khan avatar

Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.

LinkedIn

相關文章 - Python Loop