小编典典

Python可以打开的文件最大大小?

python

我用Python打开了一个8
MB的文件,因为我想批量更改各种类型的文件名。我仔细检查并将文件加载到字符串中,然后使用字符串方法replace替换了所有内容。然后我注意到只有一半的文件被替换了。好像Python没有完全打开文件。

我必须在Python的范围内发挥某种字符串大小限制或最大文件大小限制吗?

我已更改为建议的代码。缓冲区是一个超过15万行的8 MB HTML文件。替换代码可以完美运行;只是它并不能替代一切。或者例如,一个令人痛苦的错误是:

当我尝试将字符串ff10替换为FF-10时,它将更改为FF-010。


阅读 187

收藏
2021-01-20

共1个答案

小编典典

不,Python可以打开的文件大小没有上限。8 MB在现代意义上来说 很小 。您在某处犯了一个错误。

人们经常将数 千兆字节 的数据加载到内存中。根据计算机的RAM(无论是64位还是32位操作系统和处理器),在您实际获得的最大容量可能为1
GB以上MemoryError

作为测试,我只是将一个350
MB的文件加载到一个字符串中。只花了几秒钟。然后,我将其写回到文件中。那花了一点时间。然后,我对文件进行了哈希处理。两者是相同的。

在使用大型字符串之前,Python不会出现问题,直到达到RAM,操作系统或处理器的极限。

您说自己“遍历并将文件加载到字符串中”
–听起来像是您可能会犯错误的第一个地方。要将文件加载到字符串中,只需执行fileobject.read()。如果您以其他方式执行此操作,则可能是问题所在。

2021-01-20