例如,如果我有glider = [[0,0,0,0],[1,2,3,4],[0,1,3,4],[0,0,0,0]],如果嵌套列表有所不同,我将如何删除第一个和最后一个列表以及每个列表的第一个和最后一个字符。之后看起来像这样。

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


例如,我不能仅仅使用del函数,因为尺寸会有所不同。例如:[[0,0,0,0,0],[1,2,3,4,5],[0,1,2,3,4],[0,0,0,0,0]]
[[0,0,0],[1,2,3],[0,0,0]]

这只是一个较大程序的一小部分,但是却让我感到困惑。也许更好的方法是创建一个全新的列表?谢谢。

最佳答案

您可以使用切片和临时列表来执行此操作:

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

glider = glider[1:-1]

templist = []

for i in glider:
    templist.append(i[1:-1])
glider = templist
del templist


输出:

>>> glider
[[2, 3], [1, 3]]

关于python - 从嵌套列表中删除特定的列和行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35984326/

10-11 07:37