for循环和遍历列表

for循环和遍历列表,第1张

for循环和遍历列表

这里发生的是一个列表在循环过程中发生了变异。

让我们考虑以下代码片段:

a = [0, 1, 2, 3]for a[-1] in a:    print a

输出为:

[0, 1, 2, 0][0, 1, 2, 1][0, 1, 2, 2][0, 1, 2, 2]

每次迭代:

  • 从内部指针当前指向的位置读取值
  • 立即将其分配给列表中的最后一个元素
  • 在最后一个元素打印在标准输出上之后

就像这样:

  • 内部指针指向第一个元素,为0,最后一个元素被该值覆盖;清单是
    [0, 1, 2, 0]
    ; 印刷价值是
    0
  • 内部指针指向第二个元素,即1,最后一个元素被该值覆盖;清单是
    [0, 1, 2, 1]
    ; 印刷价值是
    1
  • (…)
  • 在最后一步,内部指针指向最后一个元素;last元素被其自身覆盖-列表在上一次迭代时不会更改;打印的元素也不会改变。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5623398.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-15
下一篇2022-12-15

发表评论

登录后才能评论

评论列表(0条)

    保存