我在这里使用 python 中的代码,例如:
if option2 == 1:
try:
global option2, Nimages
for sur in fm_path:
shutil.copy(sur,file1) # here how to speed up the copy function
option2 = 0
except shutil.Error as e:
print('Error: %s' % e)
执行此操作时,如果我复制一个冗长的文件,则复制会花费太多时间。有什么减少时间的建议吗?
请您参考如下方法:
如果您正在处理大文件,您可以尝试将文件打开/写入作为副本。如 Faster Python File Copy 中所述, shutil.copyfileobj 中的默认缓冲区大小(这是在 shutil 中执行文件复制的真正函数)是 16*1024, 16384。您可以使用更大的缓冲区大小然后.
例如,
with open(src, 'rb') as fin:
with open(dst, 'wb') as fout:
shutil.copyfileobj(fin, fout, 128*1024)
