首頁 >後端開發 >Python教學 >嵌套列表推導式在 Python 中如何運作?

嵌套列表推導式在 Python 中如何運作?

Patricia Arquette
Patricia Arquette原創
2024-12-12 14:16:16806瀏覽

How Do Nested List Comprehensions Work in Python?

理解巢狀列表推導式

在Python 中,列表推導式是一種透過迭代其他序列來建立列表的簡潔方法。雖然涉及單級迭代的簡單列表推導式很簡單,但嵌套列表推導式可能更令人困惑。

語法和解釋

考慮以下嵌套推導式:

a = [[1, 2], [3, 4], [5, 6]]
b = [x for xs in a for x in xs]

此推導式透過迭代建立一個新列表b通過a 的元素,a 是一個列表的列表。外部循環(for xs in a)迭代每個內部列表,而內部循環(for x in xs)迭代內部列表中的每個元素。

展開循環

理解嵌套列表推導式的關鍵是在循環執行時可視化它們,將它們展開為如下所示:

for x in [1, 2]:
    for x in [3, 4]:
        for x in [5, 6]:
            yield x

這個未纏結的循環表示嵌套理解,演示它如何迭代嵌套結構中的所有元素並產生結果列表b 的值。

泛化

嵌套列表推導式的一般規則是循環按順序執行它們被寫入,最後一個索引變化最快。這允許建立包含來自多個嵌套序列層級的元素的清單。

範例應用程式

巢狀清單推導式對於下列任務很有用:

  • 展平巢狀清單
  • 從中擷取特定項目多維結構
  • 將巢狀結構的元素轉換為新清單

以上是嵌套列表推導式在 Python 中如何運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn