Spezifische Dateien in Ordner kopieren

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Tiusa
User
Beiträge: 1
Registriert: Montag 7. März 2022, 10:47

Hey,
bin Python-Neuling und steh auf dem Schlauch, ich möchte aus einem Ordner bestimmte Dateien in einen anderen Ordner kopieren, leider ohne Erfolg mein Code sieht bisher in etwa so aus:

Code: Alles auswählen

import shutil
import os

os.chdir('C:\\')


files = ['test.txt' , 'text.exe' , 'test.csv']


source = (r"C:\\Users\User\Dropbox\test\\")
destination = (r"C:\Users\User\Desktop\test\\")


for files in os.listdir(source):
    shutil.copy2(source + files, destination)
print(filename)


Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

Definiere "ohne Erfolg".

Mit os.chdir änderst du einen globalen Status. Weg damit. Warum definierst du files als Liste? Weiter unten in der for-Schleife überschreibst du files wieder mit dem Namen eines einzelnen Dateieintrags. Zm Handling von Pfaden und Dateinamen sollte man pathlib aus der Python-Standardbibliothek verwenden.
Sirius3
User
Beiträge: 18279
Registriert: Sonntag 21. Oktober 2012, 17:20

Die Doppelten Backslashes sind zu viel, da Du ja raw-Strings benutzt.
Pfade stückelt man nicht mit + zusammen, sondern benutzt pathlib.Path. os.chrdir hat in einem ordentlichen Programm nichts zu suchen.
Antworten