0

我有一个非常大的 1000+ 列表,我想从列表中删除前 319 个元素。我试过了

 for i in range(0,320):
     list1.pop(i)

但这不起作用但是当我list1.pop(0)单独执行时它确实删除了一个元素我如何才能删除前 319 个元素

4

2 回答 2

2

del在切片上使用:

del list1[:319]

这将一次性删除元素 0 - 318(总共 319 个元素)。

于 2013-04-03T15:06:44.893 回答
2

使用切片语法:

del list1[0:319]

顺便说一句,list1.pop重复调用不起作用,因为每次删除后都会重新索引项目。因此,当您删除第一项时,一项(即第二项)将成为第一项。如果你真的想pop在循环中使用,你必须调用list1.pop(0)319 次——但这会非常低效。

于 2013-04-03T15:06:47.247 回答