gpt4 book ai didi

Python 似乎永远不会启动循环

转载 作者:行者123 更新时间:2023-12-01 04:35:56 25 4
gpt4 key购买 nike

当我在终端中运行此命令时,直到启动后 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

最佳答案

尝试使用生成器(xrange)而不是列表(range),即

for i in xrange(1234567890, 9876543210 + 1): 

关于Python 似乎永远不会启动循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31712778/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com