如何在Python中使用长整型构建范围?
我想在Python中创建一个范围,这个范围的上限比整数的最大值还要大。我在寻找类似下面的东西:
import sys
start = 100;
step = 100;
limit = sys.maxint + 1;
result = xrange(start, limit, step);
不过,xrange
的参数是有限制的,只能用整数。根据Python标准库的说明,我需要使用itertools
模块中的islice(count(start, step), (stop-start+step-1)//step)
,但是islice
似乎在参数上也有相同的整数限制。
有没有其他方法可以创建一个上限是长整型的列表呢?
1 个回答
9
xrange
是一个很简单的功能,你完全可以自己实现它,所以你可以这样做:
def xlongrange(start, limit, step):
n = start
while n < limit:
yield n
n += step