del lst[1::2]
演示:
>>> lst = ['712490959', '2', '623726061', '2', '552157404', '2', '1285252944', '2', '1130181076', '2', '552157404', '3', '545600725', '0']
>>> del lst[1::2]
>>> lst
['712490959', '623726061', '552157404', '1285252944', '1130181076', '552157404', '545600725']
在迭代列表时,不能从列表中删除元素,因为列表迭代器在删除项目时不会进行调整。请参阅循环“忘记”以删除某些项,尝试时会发生什么。
另一种方法是建立一个新的列表对象,以取代旧的,使用列表理解与enumerate()
提供的指标:
lst = [v for i, v in enumerate(lst) if i % 2 == 0]
这 将保留 偶数元素,而不是删除奇数元素。