切片列表列表以删除第一项

问题描述 投票:0回答:2

如何切片以去掉列表列表中的“Hello”、“World”和“Monty”?我有:

lst1 = [["Hello",1,2,3],["World",4,5,6],["Monty",7,8,9]]

我想要:

lst2 = [[1,2,3],[4,5,6],[7,8,9]]
python list slice
2个回答
3
投票

您可以使用

lst
从第二个元素开始获取列表
lst[1:]
的切片。要对每个子列表执行此操作,您可以使用列表理解

>>> lst1 = [["Hello", 1, 2, 3], ["World", 4, 5, 6], ["Monty", 7, 8, 9]]
>>> lst2 = [lst[1:] for lst in lst1]
>>> lst2
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

3
投票

您可以通过列表理解来实现它,并使用 [1:] 选择器在每次迭代中获取嵌套列表第一个旁边的最后一个元素。

lst1 = [["Hello", 1,2,3], ["World",4,5,6],["Monty",7,8,9]]

lst2 = [item[1:] for item in lst1]
print (lst2)
# [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
© www.soinside.com 2019 - 2024. All rights reserved.