sunflower758 2022-03-12 13:36 采纳率: 84.9%
浏览 73
已结题

python列表pop函数


lst = ["s","ad","wqe","rer"]
for i in lst:
    lst.pop(0)
    print(lst)
print(lst)

为什么得到
['ad', 'wqe', 'rer']
['wqe', 'rer']
['wqe', 'rer']
而不是删除了列表里面所有的元素,最后给我输出一个空列表?

  • 写回答

3条回答 默认 最新

  • ironknee 2022-03-12 14:01
    关注

    因为每次pop列表长度都会变的,循环却是一个一个往后的,第二次pop后列表就只剩两个元素了,循环拿不到第三个元素的值所以停了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月20日
  • 已采纳回答 3月12日
  • 创建了问题 3月12日