【发布时间】:2015-02-26 14:30:06
【问题描述】:
iter function 包装了列表或元组之类的对象,以便将它们用作迭代器,例如,可以使用next。例如,
next(iter([1, 2, 3]))
返回 1。
如果我们传递给iter 的对象已经是一个迭代器,内部会发生什么?它是否只是返回原始对象,即无操作?还是它会产生一个新的迭代器来包装原始迭代器?当然,包装并不是指复制原始迭代器。
【问题讨论】:
-
任何 next() 都会影响所有其他人