2017-05-29 3 views
0

Ich versuche, eine Datei aus einem Ordner in einen anderen Ordner mit dem Python Shuttil-Modul kopieren, und es gibt mir einen Fehler, nicht sicher, was das Problem ist.Python Kopieren und Vergangenheit

import os 
import shutil 

source = os.listdir("D:\Personal\TEST\SRC") 
print source 
destination = "D:\Personal\TEST\DEST" 

for files in source: 
    if files.endswith('.txt'): 
     shutil.copy(files,destination) 

Error: 
File "C:/Users/xxx/xxx/config/scratches/test.py", line 10, 
in <module> 
shutil.copy(files,destination) 
File "C:\Python27\Lib\shutil.py", line 119, in copy 
copyfile(src, dst) 
File "C:\Python27\Lib\shutil.py", line 82, in copyfile 
with open(src, 'rb') as fsrc: 
IOError: [Errno 2] No such file or directory: 'TEST.txt' 

jede Hilfe ist viel Dank geschätzt.

+0

scheint, dass 'listdir' relative Pfade zurück. –

+0

change 'shuthil.copy (dateien, ziel)' nach 'für filename in dateien: shutil.copy (os.path.join (r" D: \ Persönliche \ TEST \ src ", dateiname), ziel)' – inspectorG4dget

Antwort

0

Try this:

import os 
import shutil 

source = r"D:\Personal\TEST\SRC" 
destination = r"D:\Personal\TEST\DEST" 

for file in [os.path.join(source, x) for x in os.listdir(source)]: 
    if file.endswith('.txt'): 
     shutil.copy(file, os.path.join(destination, os.path.basename(file))) 
+0

Vielen Dank Für die Antwort funktioniert es wie erwartet. –

+0

@donjacob Dann sei bitte so freundlich, die Antwort als die passende zu markieren, damit die Frage als * geschlossen * betrachtet werden kann. –

Verwandte Themen