【 在 VincentGe 的大作中提到: 】
: 我建议你阅读Python文档中的术语表。
: 对于你给出的第二段代码,它是一个标准的迭代器其中iter返回self,next被反复调用返回值。
: 包含yield的函数被称为生成器,其返回值是生成器迭代器。其中不应当引发任何异常,如果你引发stopiteration,则会产生一个Runtime Error。还有for else 很少用,建议不要使用。
: ...................
你还是没搞清, 什么是可迭代对象, 什么是迭代器, 什么是生成器。
你说的next是可迭代对象, 的接口, 和iterator是是两个东西。
for in 可以使用迭代器实现, 但是, 使用生成函数一样可以实现。
--
FROM 124.126.0.*