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

发布于 2021-01-29 14:58:30

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

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

请参阅Python搜索中的代码并替换未正确替换的代码。

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

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

关注者
0
被浏览
210
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

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

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

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

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

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



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看