使用推导式将列表的Python列表转换为一维[重复]

问题描述 投票:0回答:1

将此循环转换为单行理解运算符的语法是什么?

lst = [
    [1,2,3],
    [4,5,6],
    [7,8,9],
    [10,11,12]
]

all_records = []
for entry in lst:
    all_records.extend(entry)

#[1, 2, 3, 3, 0, 1, 5, 2, 5, 10, 11]

当我在做的时候

all_records = [entry for entry in lst]

它给了

[[1, 2, 3], [3], [0, 1, 5], [2, 5, 10, 11]]
python list-comprehension
1个回答
0
投票

您可以使用以下理解来展平 2D 列表

lst = [[1,2,3],[4,5,6],[7,8,9]]
flat = [j for i in lst for j in i]
print(flat)  # [1, 2, 3, 4, 5, 6, 7, 8, 9]
© www.soinside.com 2019 - 2024. All rights reserved.