嵌套列表理解解釋
嵌套列表理解提供了一種使用可迭代動態創建複雜列表的簡潔方法。雖然可以透過等效的 for 迴圈來理解它們的功能,但它們的系統方法有助於在不同的範例中應用該概念。
語法和翻譯
嵌套列表推導式遵循以下語法:
[exp2([exp1 for x in xSet]) for y in ySet]
打破這個往下看,你會發現對於ySet 中的每個元素y,都會建立一個內部清單。在此內部清單中,針對 xSet 中的每個元素 x 計算表達式 exp1。最後,外部列表理解使用創建的每個內部列表評估 exp2。
簡化範例
[exp1 for x in xSet for y in ySet]扁平化理解:
[exp1 for x in xSet for y in ySet][exp1 for x in xSet for y在 ySet]
[exp1 for x in xSet for y in ySet]列表列表理解:
[exp1 for x in xSet for y in ySet][[exp1 for x in xSet] for y in ySet]
等價的for 循環:
結果= [] 對於 ySet 中的 y: 內部結果 = [] 對於 xSet 中的 x: 內部結果.append(exp1) result.append(innerResult)對推導式中的每個 for 迴圈重複步驟 1-3。
使用外層表達式(exp2)來計算最終結果。
記住,發生了for循環的嵌套從左到右,允許以簡潔的語法進行複雜的列表轉換。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3