迭代器和迭代对象 生成器 推导式
# iterable 》》》》》 。迭代器__iter__
re = range(5).__iter__()
print(re)
# <range_iterator object at 0x034A0FE0> 生成迭代器
print(re.__next__())
print(re.__next__())
print(re.__next__())
print(re.__next__())
print(re.__next__())
# 可迭代对象
# 迭代器
re = range(1,10)
ru = re.__iter__()#
print(ru)# 转换成迭代器
print(ru.__next__())# 1
print(ru.__next__())# 2
print(ru.__next__())# 3
#
# for i in iterable:
# pass
# for 循环迭代是怎么做到的
# 会把iterable 调用_iter__() 转换成iterator 然后又调用__next__() 函数获取元素
# 推导式
re = [i for i in range(1,10)]
# 生成器
re = (i for i in range(1,10))
re.__next__() # 开始取元素
re.__next__()
re.__next__()
re.__next__()
re.__next__()
re.__next__()
re.__next__()
re.__next__()
for i in re:
print(i)
# iterable 可迭代对象
# iterator 迭代器
# generator 生成器