python中的range和xrange有什么区别呢?
就功能而言,在大多数情况下,xrange和range完全相同。它们都提供了一种生成整数列表供您使用的方法,但是您可以随意使用。唯一的区别是range返回一个Python列表对象,而x range返回一个xrange对象。
这意味着xrange在运行时实际上不会像range那样生成静态列表。它通过一种称为yield的特殊技术根据需要创建值。该技术与一种称为生成器的对象一起使用。这意味着,如果您有一个非常庞大的范围,您想生成一个列表,例如十亿,则使用xrange函数。
如果您有一个真正的内存敏感系统(例如正在使用的手机),则尤其如此,因为range将使用尽可能多的内存来创建整数数组,这可能导致内存错误并使您的崩溃程序。这是一个渴望记忆的野兽。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。