Python编译器将以下代码转换为生成器:
def myGenerator(max):
for i in range(max):
yield i
它可以与此代码一起使用:
>>> gen = myGenerator(10)
>>> next(gen)
0
>>> next(gen)
1
如果我查询gen类,我会得到generator
。
是否可以使用自定义生成器类?假设我想在gen
上设置百分比属性。
>>> gen.Percent
10
据我了解发电机,他们实施了几种方法。我可以自己构建一个像对象一样的生成器并通过自定义方法扩展它吗?