怎么在python中解析生成器

这篇文章给大家介绍怎么在python中解析生成器,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

python的五大特点是什么

python的五大特点:1.简单易学,开发程序时,专注的是解决问题,而不是搞明白语言本身。2.面向对象,与其他主要的语言如C++和Java相比, Python以一种非常强大又简单的方式实现面向对象编程。3.可移植性,Python程序无需修改就可以在各种平台上运行。4.解释性,Python语言写的程序不需要编译成二进制代码,可以直接从源代码运行程序。5.开源,Python是 FLOSS(*/开放源码软件)之一。

1、说明

生成器解析其实就是列表解析的扩展,当我们明确需要使用小标访问的时候,使用列表解析。而如果只需要对结果进行迭代的时候,优先使用生成器解析。

还有一个场景,就是要对结果进行缓存的时候,就只能使用列表解析了。不过使用生成器解析的场景确实要比列表解析来的多。

2、实例

python3 中的 range 函数就是一个典型的生成器,无论给它一个多么大的数,它占用内存始终很小。但是下面的代码会返回一个占用空间很大的列表:

[x ** 2 for x in range(100000)]

当我们想让它返回的结果也像生成器一样可以将中括号换成小括号:

>>> (x ** 2 for x in range(100000))
<generator object <genexpr> at 0x7fb246656620>

使用 next 函数就可以查看里面的每个值,当然 for 循环也可以。

因此将列表解析的中括号变成小括号就是生成器的语法。

关于怎么在python中解析生成器就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。