python 对列表进行for循环删除元素,删除不干净问题解决


1.对一个列表a=[1,2,3,4,5]循环删除元素:

a=[1,2,3,4,5]
for i in a:
    a.pop(0)
print(a)

运行发现最后a不是[],该问题主要原因是删除元素后,整个列表的元素会往前移动,而i却是在最初就已经确定了,是不断增大的,所以并不能得到想要的结果。

解决办法:

a=[1,2,3,4,5]
for i in a[:]:
    a.pop(0)
print(a)

这次运行完a变为空列表


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM