String-Verkettung

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
Vortec

Montag 9. Dezember 2002, 22:45

Hi,

bin Newbie in Python und wollte mal folgendes wissen:

zipaction.write("C:\python\" + element2)

Das funktioniert nicht.
"SyntaxError: invalid token".

Meine Frage: Wo ist da ein Syntax-Fehler?
Der Debugger deutet auf das Ende der Klammer.
Ich habs auch schon mit
str(element2)
und
repr(element2)
ausprobiert.

Würde mich riesig über Hilfe freuen, danke!
Voges
User
Beiträge: 564
Registriert: Dienstag 6. August 2002, 14:52
Wohnort: Region Hannover

Montag 9. Dezember 2002, 23:51

Hallo!

In Stringliteralen leitet der Backslash sog. Escape-Codes ein (gilt für fast alle Programmiersprachen). Ein "\n" steht z.B. für einen Zeilenumbruch, "\t" für einen Tabulator. Um ein \ buchstäblich in eine Zeichenkette zu bekommen, gibt es sinniger Weise den Escape-Code "\\". Deine Anweisung müsste also so aussehen: zipaction.write("C:\\python\\" + element2)

Es gibt zwar noch sog. raw strings (z.B. r"C:\bla\blub"), in denen eine Backslash keine Sonderbedeutung hat, aber solche Strings dürfen aus suptilen Gründen nicht mit einem "\" enden (Siehe auch http://www.python.org/doc/FAQ.html#6.29).

hth
Jan
Vortec

Dienstag 10. Dezember 2002, 11:40

*an kopf fass*
Das ich da nicht selber drauf gekommen bin .. Kenn das ja so ähnlich aus PHP.
Vielen dank für die Hilfe! :)
Antworten