Python 官方文档:入门教程 => 点击学习
一、生成器 生成器是 python 中非常有用的一种数据类型,它可以让你在 Python 中更加高效地处理大量数据。生成器可以让你一次生成一个值,而不是一次生成一个序列,这样可以节省内存并提高性能 二、实现generator的两种方式 py
生成器是 python 中非常有用的一种数据类型,它可以让你在 Python 中更加高效地处理大量数据。生成器可以让你一次生成一个值,而不是一次生成一个序列,这样可以节省内存并提高性能
python中的generator保存的是算法,真正需要计算出值的时候才会去往下计算出值。它是一种惰性计算(lazy evaluation)。
要创建一个generator有两种方式。
第一种方法:把一个列表生成式的[]改成(),就创建了一个generator
>>> L=[x * x for x in range(10)]>>> L[0,1,4,9,16,25,36,49,64,81]>>> g = (x * x for x in range(10))#注意把[]改成()后,不是生成一个tuple,而是生成一个generator>>> g at 0x1022ef630>
第二种方式:在函数中使用yield关键字,函数就变成了一个generator
函数里有了yield后,执行到yield就会停住,当需要再往下算时才会再往下算。所以生成器函数即使是有无限循环也没关系,它需要算到多少就会算多少,不需要就不往下算。
# -*- coding: UTF-8 -*-def fibonacci(): a, b = 0, 1 while True: yield a a, b = b, a + b# 使用生成器生成前 10 个斐波那契数列fib = fibonacci()for i in range(10): print(next(fib))
参考:
python中的生成器(generator)总结_python generator_Python 学习者的博客-CSDN博客
Python 生成器(generator)详细总结+示例_python generator_Jairoguo的博客-CSDN博客
来源地址:https://blog.csdn.net/sinat_31608641/article/details/131692227
--结束END--
本文标题: python中的生成器(generator)
本文链接: https://www.lsjlt.com/news/412006.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0