嵌套列表推導式如何運作:解碼結構和功能?

Patricia Arquette
發布: 2024-10-30 06:53:28
原創
815 人瀏覽過

How do Nested List Comprehensions Work: Decoding the Structure and Functionality?

理解巢狀清單理解

巢狀清單理解提供了一個強大的工具,可以以簡潔高效的方式產生複雜的數據結構。為了理解它們的行為,讓我們分解它們的結構。

一般語法:

[exp2([exp1 for x in xSet]) for y in ySet]
登入後複製

翻譯為擴展循環形式:

result = []
for y in ySet:
    innerResult = []
    for x in xSet:
        innerResult.append(exp1)
    exp2Result = exp2(innerResult)
    result.append(exp2Result)
登入後複製

情況:

  • [exp1 for x in xSet for y in ySet]:

    result = []
    for x in xSet:
        for y in ySet:
            result.append(exp1)
    登入後複製
  • result = []
    for y in ySet:
        innerResult = []
        for x in xSet:
            innerResult.append(exp1)
        result.append(innerResult)
    登入後複製
[[exp1 for x in xSet] for y in ySet]:

[(min([row[i] for row in rows]), max([row[i] for row in rows])) for i in range(len(rows[0]))]
登入後複製
範例:

result = []
for i in range(len(rows[0])):
    innerResult = []
    for row in rows:
        innerResult.append(row[i])
    innerResult2 = []
    for row in rows:
        innerResult2.append(row[i])
    tuple = (min(innerResult), max(innerResult2))
    result.append(tuple)
登入後複製
以下嵌套列表理解:

產生元組列表,其中每個元組包含行列表中所有行中給定列的最小值和最大值。等效的擴展循環形式為:

  • 重點:
  • 最內層循環對應於最內層表達式 (exp1)。
  • 外部循環產生內部循環的輸入。

結果是內部表達式結果的清單。

循環的嵌套順序決定結構透過理解這種系統方法,您可以將此概念應用於各種列表理解變體。

以上是嵌套列表推導式如何運作:解碼結構和功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!