迭代器是一种支持next()操作的对象,它包含了一组元素,当执行next()操作时,返回其中一个元素。
当所有元素都被返回后,再执行next()报异常---StopIteration
#coding:utf-8
"""
迭代器:对象包含__iter__方法就是一个迭代器
特点:惰性使用,用完即焚,节省内存空间
"""
"""
创建迭代器:iter
格式:迭代器对象 = iter(可迭代对象)
"""
list_iter = iter([1,2,3,4,5,6])
#如果迭代对象为字典,生成迭代器获取字典的键
#通过next(迭代器对象)函数获取下一个元素,如果没有元素抛出异常
print(next(list_iter))"""生成器:函数中使用yield 关键字生成值就是一个生成器特点:有暂停执行功能,节省内存空间
"""
def 函数():yield '值' #函数中使用yield 关键字生成器函数
#案例;用生成器来实现计数功能
def counter(start = 1):count = startwhile True:yield count #当执行yieldcount += 1 #count 递增 1
#创建生成器
count = counter() #创建对象
print(next(count))