-11

iter在python中使用函数有什么用?

而不是这样做:

for i in range(8):
  print i

我也可以使用iter

for iter in range(8):
  print iter
4

2 回答 2

7

首先:iter()通常是一个函数。您的代码使用同名的局部变量来屏蔽该函数。您可以使用任何内置的 Python 对象来执行此操作。

换句话说,您在这里没有使用该iter()功能。您正在使用恰好使用相同名称的 for 循环变量。你可以这样称呼它dict,它与字典无关,而与 Guido 对咖啡的选择无关。从for循环的角度来看,您的两个示例之间没有区别。

否则,您将使用该iter()函数来生成迭代器类型;具有.next()方法的对象(.__next__()在 Python 3 中)。

通常,for循环会为您执行此操作。当使用可以产生迭代器的对象时,该for语句将使用调用iter()它的 C 等效项。iter()只有在对对象执行其他特定于迭代器的操作时,您才会使用该对象。

于 2013-07-01T10:23:40.787 回答
0

iter()是一个 Python 内置函数,它返回一个迭代器对象,它是一个表示一些数据的对象。例如,它可以与.next()迭代器上的方法一起使用,该方法将为您提供下一个元素 - 当没有更多元素时将发生 StopIteration。

于 2014-08-11T01:14:44.787 回答