等待shutil.copyfile完成

时间:2013-02-07 00:52:18

标签: python shutil file-copying

我想复制一个文件,然后开始编写新文件:

shutil.copyfile("largefile","newlargefile")
nwLrgFile=open("newlargefile",'a')
nwLrgFile.write("hello\n")

但是,当我这样做时,上面的hello将在文件结束之前写入。确保复制文件完成的正确方法是什么?

我查看了SO和其他地方但是我看到的所有答案都说shutil.copyfile阻塞或锁定它应该不是问题。然而,确实如此。请帮忙!

1 个答案:

答案 0 :(得分:2)

请直接尝试使用copyfileobj

with open('largefile', 'r') as f1, open('newlargefile', 'w') as f2:
    shutil.copyfileobj(f1, f2)
    f2.write('hello')