【发布时间】:2019-04-15 02:48:12
【问题描述】:
我在 Windows 上使用 Python 将一个大文件(几 GB)拆分为许多小文件。该文件按行内容拆分,因此我需要同时打开所有小文件,并将内容写入其中。
我在尝试打开其中一个文件时收到IOError: [Errno 24] Too many open files,根据调试器,已经有 507 个打开的文件。
有没有办法提高允许的最大打开文件数?
我了解了 macOS 中的 ulimit 选项,但在 Windows 上找不到等效选项。
另外,为什么我在 507 个文件之后会出现此错误?这具体是最大值吗?
谢谢
【问题讨论】:
-
为什么需要同时打开所有文件?为什么不在内存中拆分大文件,然后依次写出较小的文件?
-
大文件(实际上可能是几个大文件一个接一个)可能非常大(总体包括所有文件 - 几 GB)
-
请看一下这个问答,你的问题似乎是重复的stackoverflow.com/questions/6475328/…
-
我完全知道如何读取文件,我的问题是同时将其写入其他文件,它与链接中的答案无关