请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于可迭代对象与list的问题

list是可迭代对象,可迭代对象内部实现的是__iter__方法。可以用for循环。而for本质上是不断调用__next__方法,但list并未实现__next__,而是__iter__,为什么可以被for循环?

正在回答

1回答

7七月 2019-03-18 00:46:52

你有看14章的 迭代器和生成器吗?

0 回复 有任何疑惑可以回复我~
  • 提问者 William_0002 #1
    看过了,这么理解对不对:list的iter方法会返回一个迭代器,迭代器里会实现next方法?
    但源码iter函数是空的找不到,如果自己实现得话该怎么实现
    回复 有任何疑惑可以回复我~ 2019-03-18 21:09:50
  • 提问者 William_0002 #2
    录制时间比较短,所以您对迭代器生成器,数组本质内部实现,for循环本质等讲解的比较粗糙
    回复 有任何疑惑可以回复我~ 2019-03-18 21:20:05
  • 7七月 回复 提问者 William_0002 #3
    python内部的很多源码是C实现的根本是看不到的。你确定要去读C的代码吗,官方文档是有的。可以去看一下。不过理论上你的分析是没问题的。
    回复 有任何疑惑可以回复我~ 2019-03-18 23:14:58
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信