Hi !
Habe erst vor kurzem mit Python angefangen.
Ich will eine mp3 Datei umbenennen.
import os
os.rename('C:\mp3\song.mp3','C:\mp3\songumbenannt.mp3')
Die Datei song.mp3 befindet sich in dem angegebenen Verzeichnis,
aber irgendwas stimmt da nicht. Bekomme immer die Fehlermeldung:
WindowsError: [Error 123] Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch
Viele Gruesse, Ronny
Anfaengerfrage zu rename
- Sr4l
- User
- Beiträge: 1091
- Registriert: Donnerstag 28. Dezember 2006, 20:02
- Wohnort: Kassel
- Kontaktdaten:
Du musst \ durch / ersetzten oder vor den String ('C:\..) ein r setzen.
bsp:
r'C:\Programme\...'
das hat was damit zutun der Backslash (\) ein escape zeichen ist also den nächsten buchstaben 'entwertet' es ist spät also überlasse ich das genauere den anderen
bsp:
r'C:\Programme\...'
das hat was damit zutun der Backslash (\) ein escape zeichen ist also den nächsten buchstaben 'entwertet' es ist spät also überlasse ich das genauere den anderen
- birkenfeld
- Python-Forum Veteran
- Beiträge: 1603
- Registriert: Montag 20. März 2006, 15:29
- Wohnort: Die aufstrebende Universitätsstadt bei München
In Python-Stringliteralen sind "Backslash + bestimmte Zeichen" Escapesequenzen für nichtdruckbare Zeichen.
Zum Beispiel steht "\n" für ein Newline (Zeilenende) oder "\t" für ein Tab. "\\" steht für einen Backslash.
Du musst also entweder alle Backslashes verdoppeln oder sogenannte "raw strings" verwenden:
"C:\\dir\\file.mp3"
r"C:\dir\file.mp3"
In "raw strings" werden die genannten Backslash-Escapes nicht verarbeitet.
Zum Beispiel steht "\n" für ein Newline (Zeilenende) oder "\t" für ein Tab. "\\" steht für einen Backslash.
Du musst also entweder alle Backslashes verdoppeln oder sogenannte "raw strings" verwenden:
"C:\\dir\\file.mp3"
r"C:\dir\file.mp3"
In "raw strings" werden die genannten Backslash-Escapes nicht verarbeitet.