您的位置:首页 > 其它

迭代器和iter()函数

2015-07-17 14:20 417 查看
1、先来个例子,有个初步的印象:

myTuple=(123,'xyz',45.67)
i=iter(myTuple)
i.next()
123
i.next()
'xyz'
i.next()
45.67
i.next()
Traceback (most recent call last):
File "", line 1, in?
StopIteration


上面的代码中通过iter()函数显式的使用了迭代器,而迭代器就是一个包含了next函数的类,同时

平时我们在使用如:

for i in seq:
do_something_to(i)


时也使用到了迭代器,其真实的工作代码应该如下:

fetch=iter(seq)
while True:
try:
i = fetch.next()
except StopIteration:
break
do_something_to(i)


而,平时我们在显式的使用迭代器时也应该像上面一样将迭代器包裹在try…except…中

2、使用的类型

除元组外,列表、字典、文件等都可以使用,

如字典类型

for eachkey in myDict:
do_something_to(i)


字典的迭代器会遍历它的键

3、注意事项

在迭代可变对象时,不要试图修改它们。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: