python 3 生成器generator的构造和使用

2025-05-16 00:43:20

1、构造生成器通常需要写类似函数的代码,但是一种简单的构造生成器generator的方式是使用推导式,如图gen1语句。这种构造语句与列表推导式非常相似,但是其行为和列表推导式是不同的,下面分析执行结果。

python 3 生成器generator的构造和使用

3、功能复杂的生成器往往需要写类似函数的代码,如图所示。注意yiel蟠校盯昂d和return的区别。return意味着生成器的迭代结束,对应StopIteration异常;而yield的值会被使用者读取。一个生成器在结束之前往往多次yield。图中的gen_prime(50)和gen_prime(100)分别创建了生成器generator对象,并交给for循环用于迭代取值,直到迭代结束。

python 3 生成器generator的构造和使用python 3 生成器generator的构造和使用

6、有时候,如果我们希望生成器结束执行抛出异常,可以调用其throw方法,如图所示。

python 3 生成器generator的构造和使用

8、我们同时创建了如图DNA片段字符串,并用DNA字符串创建一个用来提供转录的输入生成器DNAgen,并调用transcrib髫潋啜缅er()得到一个用于转录的生成器tbr。使用如图的代码完成了对DNA的转录输出。注意其中对tbr调用send函数,他将输入值送给生成器tbr,并等效于一次next,得到转录结果。下方可以看到转录输出。

python 3 生成器generator的构造和使用
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢