2
我正在使用Python的Project Euler的problem 3,但我似乎无法解决问题,但未遇到以下错误:“OverflowError:range()result has too many items”for循环中的溢出错误
我想知道是否有办法增加允许的范围?我的代码如下:
target = 600851475143
largest_prime_factor = 1
#find largest prime factor of target
for possible_factor in range(2,(target/2)+1):
if target % possible_factor == 0:
is_prime = True
for i in range(2,(possible_factor/2)+1):
if possible_factor % i == 0:
is_prime = False
break
if is_prime:
largest_prime_factor = possible_factor
print largest_prime_factor
错字在最后一句。它应该是'range'而不是'xrange'。另外,在Python 3中,'range'是[序列类型](https://docs.python.org/3.5/library/functions.html#func-range),而不是返回生成器的函数。 –