Python Python中的迭代器

Python中的迭代器
什么是迭代器
- 同步进行(不需要等待所有数据都写入内存即可使用)
如何生成迭代器 - iter
介绍
- 生成一个迭代对象
用法
iter(iterable)
参数介绍
iterable: 可迭代的数据类型
迭代器的用法 - next
介绍
- 返回迭代器中的数据
用法
next(iterator)
参数介绍
iterator: 迭代器对象
迭代器常用方法之生成迭代器
for循环生成法---
yieldfor循环一行生成迭代器
迭代器常用方法之for循环获取
- (i for i range(10))
- 用完再用不会报错.
代码
# coding:utf-8
iter_obj = iter((1, 2, 3))
# print(next(iter_obj))
# print(next(iter_obj))
# print(next(iter_obj))
# print(next(iter_obj))
def _next(iter_obj):
try:
return next(iter_obj)
except StopIteration:
return None
# print(_next(iter_obj))
# print(_next(iter_obj))
# print(_next(iter_obj))
# print(_next(iter_obj))
# print(_next(iter_obj))
def make_iter():
for i in range(10):
yield i
iter_obj = make_iter()
# print(type(iter_obj))
for i in iter_obj:
print(i)
print('--------')
for i in iter_obj:
print(i) # 执行后程序会空 , 拿不到数据
iter_obj = (i for i in range(10))
for i in iter_obj:
print(i)
print('========')
for i in iter_obj:
print(i)




