Python:读/写大量小文件

Python:读/写大量小文件,python,io,Python,Io,我有大量(约60K)的小文件(请记住,I/O操作非常繁重,写入或读取文件会产生开销 写入1024个新文件(每个文件的大小为1kb)比写入一个1mb的新文件要长得多。 打开系统的每个文件都需要在文件系统中为其找到一个位置,并写入其元数据 因此,无论您计划做什么,您的性能可能都不会很好,但我建议您确保尽可能减少操作(即,将所有文件上载到FTP服务器,而不是打开每个文件的连接并自行上载)。 我建议您发布一段代码片段,这样人们就可以帮助您确保代码是尽可能少的发布代码。您所说的性能真的很差是什么意思?您试

我有大量(约60K)的小文件(请记住,I/O操作非常繁重,写入或读取文件会产生开销

写入1024个新文件(每个文件的大小为1kb)比写入一个1mb的新文件要长得多。 打开系统的每个文件都需要在文件系统中为其找到一个位置,并写入其元数据

因此,无论您计划做什么,您的性能可能都不会很好,但我建议您确保尽可能减少操作(即,将所有文件上载到FTP服务器,而不是打开每个文件的连接并自行上载)。

我建议您发布一段代码片段,这样人们就可以帮助您确保代码是尽可能少的

发布代码。您所说的性能真的很差是什么意思?您试图在一分钟内写入60k文件并上载?不要认为它可以那么快(不包括上载速度),我不明白你所说的性能差是什么意思,是速度问题?你在处理过程中做了什么?我怀疑你是否能够在没有任何处理的情况下快速打开、关闭和上传那么多文件,但在不知道你在处理过程中做了什么的情况下,我们无法帮助你确定真正的(和可解决的)问题在哪里性能问题是。谢谢您的评论。我需要每分钟处理这些文件,因此我需要不到1分钟的处理时间来确保在新处理开始之前完成当前处理。我所说的性能差是指处理时间更长,并使我的系统挂起。我只是在处理过程中做一些简单的事情,例如删除空行谢谢你的评论。我也知道这一点。我只是想知道我们是否有更好的方式来读/写文件,因为目前我使用“with open file..as f”,“f.read”,“f.write”正如我在评论中所说,I/O操作很繁重,但您可能会从代码的另一部分节省一些时间,这可能不是最有效的。谢谢@kaki gadol,但我的处理部分很简单,只有一行代码,比如:if not line.strip():output.append(line)所以我不认为我们可以优化itI我不是说这部分..这段代码的其他部分与您的问题有关,例如打开每个文件并保存每个文件的部分。我现在不确定(我们可以检查这一点),但可能不检查每一行会更快