范围内的大输入值问题

时间:2015-04-10 09:50:32

标签: python python-2.7

我已经写了一段代码并测试它我正在调用名为&#34的函数;评论"对于一些输入的n个时间,其中n = 2000000000但似乎给出错误

Python版本= 2.7.6

一段代码: -

for i in range(2000000000):
   inp = getlis(input1)
   print inp,input2,Comment(inp,input2)
   inp = []

输出: -

Traceback (most recent call last):
  File "cha.py", line 103, in <module>
    for i in range(200000000):
MemoryError

python导致问题的范围限制。

1 个答案:

答案 0 :(得分:3)

使用xrange

for i in xrange(2000000000):
  

此函数与range()非常相似,但返回xrange对象而不是list。这是一个不透明的序列类型,它产生与相应列表相同的值,而不是实际同时存储它们。 xrange()在range()上的优势是最小的(因为xrange()在被要求时仍然需要创建值),除非在内存不足的机器上使用非常大的范围。