📅  最后修改于: 2023-12-03 14:59:07.327000             🧑  作者: Mango
在Python中,Generator对象是一种特殊的迭代器,可以通过生成器表达式(也称为“生成器推导式”)来创建。
生成器表达式类似于列表推导式,但是使用圆括号而不是方括号,并且返回一个生成器对象而不是一个列表对象。例如:
gen = (x * 2 for x in range(10))
这将创建一个生成器对象gen,它可以使用next()方法来逐个获取元素,如下所示:
print(next(gen)) # 输出0
print(next(gen)) # 输出2
print(next(gen)) # 输出4
由于Generator对象是一种迭代器,所以它可以被用于for循环中,例如:
gen = (x * 2 for x in range(10))
for num in gen:
print(num)
这将输出0到18的所有偶数,因为生成器表达式仅创建奇数位于偶数个元素。
与使用列表对象相比,Generator对象有许多优势:
总之,Generator对象是一种灵活的Python工具,可以提供高效和内存友好的处理大型数据集的方法。