python中怎么用yield写斐波那契数列

动态 未结 0 90
小小草
小小草 LV1 2023年9月23日 23:40 发表
使用 `yield` 可以很方便地实现斐波那契数列的生成器,代码如下: ```python def fibonacci(): a, b = 0, 1 while True: yield a a, b = b, a + b # 测试代码 fib = fibonacci() for i in range(10): print(next(fib)) ``` 在这个示例中,我们定义了一个名为 `fibonacci()` 的生成器函数。在函数内部,我们使用两个变量 `a` 和 `b` 来保存斐波那契数列中的前两个数,然后使用 `while` 循环不断生成下一个数,并将其通过 `yield` 返回给调用者。 在测试代码中,我们创建了一个名为 `fib` 的生成器对象,并使用 `next()` 函数逐个获取斐波那契数列中的前十个数。由于生成器是惰性求值的,因此只有在需要时才会计算下一个数,从而避免了一次性计算所有数所带来的内存和计算资源浪费。
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复