当我在终端中运行时,我在打印后30秒内看不到任何东西:
killed 9
第一次之后,我将print(i)
添加到第23行以查看正在进行的操作,但它甚至从未打印过第一个数字。这里有一些我不明白的事情。将for循环更改为非常小的数字后,它可以正常工作。我无法改变循环的范围,因为这些是我需要查看的确切数字。我该怎么办?
6 def isPandigital(digits):
7 sortedDigits = sorted(digits)
8 numDigits = len(sortedDigits)
9
10 if len(set(sortedDigits)) != numDigits:
11 return False
12
13 for i in range(1, numDigits + 1):
14 if i != sortedDigits[i - 1]:
15 return False
16
17 return True
18
19 primes = [2, 3, 5, 7, 11, 13, 17]
20 total = 0
21
22 for i in range(1234567890, 9876543210 + 1):
23 print(i)
24 digits = [int(dig) for dig in str(i)]
25 numDigits = 10
26
27 if isPandigital(digits):
28 for i in range(numDigits - 3):
29 newNum = int(''.join(map(str, digits[i:i + 3])))
30 if not (newNum % primes[i] == 0):
31 break
32 else:
33 total += i
答案 0 :(得分:2)
尝试使用生成器(xrange)而不是列表(范围),即
app.get('/logout', function(req , res){
ref.unauth();
res.redirect('/');
});