我想从Python中的列表列表创建一个列表。这是我的方法
grid=[[0,1,1], \
[1,0,1], \
[1,1,1], \
[1,0,0]]
grid2=[]
for x in range(0,len(grid)):
for y in range(0,len(grid[x])):
if grid[x][y]==0:
grid2.append(22)
if grid[x][y]==1:
grid2.append(44)
for item in grid2:print grid2
我期望的输出在grid2中列表如下:
22,44,44
44,22,44
44,44,44
44,22,22
但我的逻辑似乎是错的。需要帮助
最佳答案
您需要将grid2视为列表列表。至少我觉得你是想这么做的。
grid=[[0,1,1], \
[1,0,1], \
[1,1,1], \
[1,0,0]]
grid2=[]
for x in range(0,len(grid)):
grid2.append([])
for y in range(0,len(grid[x])):
if grid[x][y]==0:
grid2[x].append(22)
if grid[x][y]==1:
grid2[x].append(44)
for item in grid2:
print ','.join([str(x) for x in item])