python生成器说明
生成器解析其实就是列表解析的扩展,当我们明确需要使用小标访问的时候,使用列表解析。而如果只需要对结果进行迭代的时候,优先使用生成器解析。
还有一个场景,就是要对结果进行缓存的时候,就只能使用列表解析了。不过使用生成器解析的场景确实要比列表解析来的多。
python生成器解析实例
python3 中的 range 函数就是一个典型的生成器,无论给它一个多么大的数,它占用内存始终很小。但是下面的代码会返回一个占用空间很大的列表:
[x ** 2 for x in range(100000)]
当我们想让它返回的结果也像生成器一样可以将中括号换成小括号:
>>> (x ** 2 for x in range(100000)) <generator object <genexpr> at 0x7fb246656620>
使用 next 函数就可以查看里面的每个值,当然 for 循环也可以。
因此将列表解析的中括号变成小括号就是生成器的语法。
以上就是python生成器如何进行解析的方法,希望能对大家有所帮助。
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试