2013-02-07 7 views
5

bitirmek için bir dosya daha sonra yeni dosyayı yazmaya başlamak kopyalamak istediğiniz bekleyin:shutil.copyfile

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

, yukarıdaki hello dosyanın sonundan önce yazılır ne zaman. Copyfile'ın yapıldığından emin olmanın doğru yolu nedir?

SO ve diğer yerlere baktım ama gördüm tüm cevaplar shutil.copyfile blokları veya kilitler olduğunu söyledi ve bu bir sorun olmamalıdır. Ve yine de öyle. Lütfen yardım et! yerine doğrudan copyfileobj kullanılarak

+1

Şüpheli. Sorunu gösteren müstakil bir örnek sağlayabilir misiniz? – nneonneo

cevap

2

Dene:

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