从列表创建列表列表的 Pythonic 方式

标签 python list

我想从一个列表中创建一个列表列表。

列表如下所示:

level = ['   WWWWWWWWWWWWWWWWW', 'C  W C             W', 'C  W C             W', 'C  W C             W', 'C  W C             W', 'C  W C             W', 'C  W C             W', 'C  W C             W', 'C  W C             W', 'C  W C             W', 'C  W C             W', 'C  W C             W', 'C                  E']

我需要创建这个:

[[' ', ' ', ' ', 'W', 'W', 'W', 'W', 'W', 'W', 'W', 'W', 'W', 'W', 'W', 'W', 'W', 'W', 'W', 'W', 'W'], ['C', ' ', ' ', 'W', ' ', 'C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'W'], ['C', ' ', ' ', 'W', ' ', 'C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'W'], ['C', ' ', ' ', 'W', ' ', 'C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'W'], ['C', ' ', ' ', 'W', ' ', 'C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'W'], ['C', ' ', ' ', 'W', ' ', 'C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'W'], ['C', ' ', ' ', 'W', ' ', 'C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'W'], ['C', ' ', ' ', 'W', ' ', 'C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'W'], ['C', ' ', ' ', 'W', ' ', 'C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'W'], ['C', ' ', ' ', 'W', ' ', 'C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'W'], ['C', ' ', ' ', 'W', ' ', 'C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'W'], ['C', ' ', ' ', 'W', ' ', 'C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'W'], ['C', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'E']]

我是这样做的:

listofLists = []
for row in level:
  liss = []
  for col in row:
    liss.append(col)
  listofLists.append(liss)

什么是更 pythonic 的方法或更短的方法?

最佳答案

>>> listofLists = map(list,level)

(在python3中,如果你真的需要一个列表,做list(map(list, level)))

关于从列表创建列表列表的 Pythonic 方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26634645/

相关文章:

python - 从列表中删除唯一值并仅保留重复项

python - ModuleNotFoundError : No module named 'fastai'

python - 用形状为 (x, y) 的二维 bool 掩码掩蔽形状为 (x, y, z) 的 3 维张量

javascript - 序列化为 JSON 时,是否保证 List<string> 的顺序正确?

python - 随机列表选择 : How do I make sure the same item isn't ever repeated twice in a row, 一个接一个?

python - 有没有办法在Python中创建无边框透明窗口?

python - 使用 scipy.integrate.nquad 的多重积分 - lambda 函数上的错误

python - 从多维列表 Python 中获取项目

python - 我正在尝试创建一个返回特定长度列表并重复其中一个值的函数

c# - 当反射类型本身是 List 时实例化通用 c# List