Seite 1 von 1

Anfaengerfrage zu rename

Verfasst: Dienstag 29. Mai 2007, 21:43
von ronnyno
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

Verfasst: Dienstag 29. Mai 2007, 22:07
von Sr4l
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 ;-)

Verfasst: Dienstag 29. Mai 2007, 22:09
von birkenfeld
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.

Verfasst: Mittwoch 30. Mai 2007, 08:26
von ronnyno
vielen dank euch allen !

jetzt funktioniert es :D