python——函数18、迭代器(二)

1、for循环工作原理:

       for循环:

d={'a':1,'b':2,'c':3}
for i in d:
    print(i)

  原理:for循环其实就是再调后面那个d的d.__iter__()

# todo 循环第一次:
obj=d.__iter__()
i=obj.__next__()
print(i)
# todo 循环第二次
i=obj.__next__()
print(i)
# todo 循环第三次
i=obj.__next__()
print(i)

2、while循环

i={'a':1,'b':2,'c':3}
obj=i.__iter__()
while True:
    i=obj.__next__()
    print(i)

  这段代码会报异常如下图:

这时 你就会用到 try和except(捕捉):

i={'a':1,'b':2,'c':3}
obj=i.__iter__()
while True:
    try:
        i=obj.__next__()
        print(i)
    except StopIteration:
        break

     步骤 :(1)   、 首先建立一个while循环 

                 (2)、 再循环里建一个try语法

                 (3)、 将循环体缩进try里

                 (4)、 except 捕捉异常 将它报的 StopIteration异常写到except后

                 (5)、 break 结束循环

原文地址:https://www.cnblogs.com/StevenSunYiwen/p/9345441.html