2016-03-14 34 views
0

我非常接近添加一个侧面列表到我的嵌套列表,但我似乎无法得到它的工作。我目前正在使用此代码。添加列表到现有的嵌套列表

glider = [[1,2,3],[1,2,3]] 
border = [] 
for i in range (len(glider[0])): 
    border.append(0) 
glider.insert(i,border) 
glider.append(border) 

这将打印[[1,2,3],[1,2,3],[0,0,0],[0,0,0]]。然而我想要它打印[[0,0,0],[1,2,3],[1,2,3],[0,0,0]]。有没有办法修改我现有的代码来做到这一点?谢谢。

编辑:滑翔机是一个不同的嵌套列表,其中列表中可能有多少个列表或字符。然而,每个列表将总是具有相同数量的字符相比。

回答

0

执行for循环后,i为2,因此您实际上在索引2处插入了滑翔机内容之后的边框。

你应该只通过0list.insert

glider.insert(0, border) 
glider.append(border) 

这将边框添加到开始和结束。

请注意,您可以简化“边境创造”和摆脱循环的,如果你只是做border = [0] * len(glider[0])

glider = [[1, 2, 3], [1, 2, 3]] 

glider.insert(0, [0] * len(glider[0])) 
glider.append([0] * len(glider[0])) 
+0

为什么不'N = LEN(滑翔机[0])''滑翔机= [ [0] * n] +滑翔机+ [[0] * n]'? –

+0

这个效果很好,谢谢! – George