大型Python脚本会耗尽磁盘空间吗?

2024-05-13 23:00:38 发布

您现在位置:Python中文网/ 问答频道 /正文

更新:有趣的是,在大约15分钟后,我似乎已经自动恢复了大约500MB。怎么回事?

我用的是MacOSX10.5.6(豹子)。我为ProjectEuler问题编写了一个python脚本。我的脚本有一个循环,它迭代了一个巨大的计数,比如600851475143。在

在Mac的终端上使用了Vi和Python。

我连跑了5分钟也没有得到结果。我让它一直运行直到它得到结果。然后我得到一个错误“你的启动盘快满了”。

我震惊地看到我的磁盘只有38MB的可用空间,而它以前至少有1GB的可用空间。我立刻终止了“终端”。但现在我不知道如何找回记忆。:(


有人能告诉我如何恢复用于执行脚本的内存吗?在


脚本如下:

# Program to Find Largest Prime Factor of 600851475143

def isPrime(n):           #Check if Prime or Not
    i,notFactor=2,False
    while i<n:
        if(n%i==0):
            break
        notFactor=True
        i = i+1
    return notFactor

test = 600851475143       #Number to Test
i = test-1

while i>1:                #Finds Factors and See if they are Prime
    print i
    if test%i==0:
        if isPrime(i)==True:  #Syntax Error Fixed. Thanks, batbrat!
            print i
            break
    i=i-1

Tags: totest脚本true终端if空间prime
3条回答

这不是python,这是系统中使用内存的其他东西。。。可能是你的浏览器。在

1GB在Mac上几乎没有足够的可用空间。。。你需要至少10GB的免费空间,所以该清理了。在

脚本可以填满磁盘的唯一方法是创建大/多个临时文件而不进行清理。仅仅运行Python程序本身并不能填满磁盘。在

要恢复磁盘空间,您需要找出空间的使用位置并删除临时文件。不过,不知道如何在OSX上做到这一点。在Windows和Linux上,有几种优秀的工具可以可视化磁盘使用情况。在

编辑:欧拉问题被设计成在不到一分钟的时间内就可以解决,即使是在功能相当强大的计算机上。如果你花了5分钟的时间,你就错了。在

我首先想到的是,你的程序占用了大量内存,导致交换文件增长。但是,从代码中我可以看出它并没有消耗太多内存。因此,此脚本不是造成空间丢失的原因。在

相关问题 更多 >