首页 > 解决方案 > 如何将多行列表转换为单行列表?

问题描述

grid = []
grid.clear()
f = open('grid.csv','r')
for line in f :
    values = line.split()
    for n in range(0,20) :
        grid.append(values[n])
f.close()
grid

grid.csv 是包含 20*20 整数网格的文件。输出打印一个列表,每个元素在单独的行中。我试过这个

grid = list(map(lambda s: s.strip('\n'),grid))

但输出仍然在单独的行中

标签: pythonpython-3.x

解决方案


一个简单的:

with open("grid.csv", "r") as f:
    grid = [item for line in f for item in line.split()]

将为您提供 2D 数据的 1D 列表,前提是您的整数网格grid.csv确实是空格分隔的。您可以通过简单地用空格加入列表来验证它:

print(" ".join(grid))

推荐阅读