我用python编程已经有一段时间了,我决定也教我的朋友。我让他做一个方法,将返回一个数字的所有因素的列表,他给了我一个脚本,这是有点低效,但看起来仍然应该对我有用。然而,当运行程序冻结我和他的电脑(我有一个顶级的游戏pc,所以我不认为它使用了很多资源)。我给他演示了如何解决这个问题,但是我仍然不能确定是什么导致了这个问题。这是密码,谢谢你的时间!

def factors(numb):
    facs = []
    for i in range(1,int(numb // 2)):
        if numb % i == 0:
            facs.append(i)
    for i in facs:
        facs.append((numb / i))
    return facs.sort()

p.s.它从来不会抛出错误,即使在运行了一段时间之后。它也在Python3.4中

最佳答案

问题出在这个片段中:

for i in facs:
        facs.append((numb / i))

这里有一个自增序列。

关于python - Python程序卡住计算机,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32853745/

10-12 17:02