今天哥们和我讨论了一个关于list的有趣的小问题,问题如下:
a = [1, 2, 3, 4, 5, 6, 7]
定义了一个列表a,然后遍历它, 每遍历一次,就删掉那个数字:
for i in a:
print i
a.remove(i)
结果呢打印出来的数字是 1,3, 5, 7, 说明1, 3 , 5, 7被删掉了。
列表里还剩下2,4,6,这是为什么呢。
我们讨论后发现,for根据列表的索引遍历,第一次遍历的时候,读取的数字是索引0,删除列表的第一数,也就是a[0],也就是1,然后就到了第二次遍历,
读取a[1],但是,这时候的a已经不是原来的a了,它变了,由于删掉了1,所以a[1]不是数字2,数字2变成了a[0],a[1]变成了3,所以数字2被跳过了,以此类推,
就有了上述的情况。
最后
以上就是温婉西装最近收集整理的关于一个关于list的有趣的问题的全部内容,更多相关一个关于list内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复