迭代器
迭代器概念:
器:包含了多个值的容器。
迭代:循环(一次从容器中取一个值)
迭代器:从装有多个值的容器中一次取出一个值
可迭代对象:
对象:python中的一个对象(装有地址的变量)
可迭代器对象:该对象有.__iter__( )方法
[].__iter__()
{}.__iter__()
().__iter__()
{1,}.__iter__()
# 可迭代对象通过调用__iter__()方法得到迭代器对象
# 迭代器对象就可以做到不依赖索引取值(一次取一个值)
# 迭代器对象都有.__next__()方法,通过该方法取值,从前往后一次一个
# 可迭代对象
st1 = {3,4,5,6,8,7,9}
# 迭代器对象
iter_obj= st1.__iter__()
# 迭代器对象
"""
print(iter_obj.__next__())
print(iter_obj.__next__())
print(iter_obj.__next__())
print(iter_obj.__next__())
print(iter_obj.__next__())
print(iter_obj.__next__())
print(iter_obj.__next__())
print(iter_obj.__next__())
"""
# 通过try except捕获异常
"""
while True:
try:
ele = iter_obj.__next__()
print(ele)
except StopIteration:
break
"""
# 通过for巡检可以自动完成异常
for i in iter_obj:
print(i)
# 可迭代对象:有__iter__()方法的对象,调用该方法获取迭代器对象
# 迭代器对象:有__next__()方法的对象,一次从迭代器对象中获取一个值,如果获取值超过对象个数,使用__next__()方法会抛出异常
# for 循环迭代器: