del 之后数组的长度会变,但是for循环的迭代器还是按照原来的参数进行,所以当数组变短之后它便访问不到了。
建议使用filter函数
print(list(filter(lambda x:x%2!=0,list01)))
改了下,代码,望采纳,谢谢:
list01=[10,20,33,40,51,60,70,80]
list=[]
for i in range(len(list01)):
if list01[i] % 2!=0:
list.append(list01[i])
for i in range(len(list)):
list01.remove(list[i])
print(list01)
效果: