Seite 1 von 1
print
Verfasst: Sonntag 19. Februar 2012, 13:24
von mina
Hallo,
ich versuche, den folgenden Befehl ausführen,
Code: Alles auswählen
Datei = open("D:/sng/datei.txt","w")
print >> Datei, "<?xml version="1.0"?> "
und bekomme ich eine Fehlermeldung:
Code: Alles auswählen
File "<string>", line 198
print >> Datei, "<?xml version="1.0"?> "
^
SyntaxError: invalid syntax
kennt jemand eine Lösung, mit der man einen String innerhalb einen String definieren kann.
Danke für Ihre Hilfe
Viele Grüße
Mina
Re: print
Verfasst: Sonntag 19. Februar 2012, 13:30
von deets
Du kannst triple-quotes oder einfache Anfuehrungszeichen oder escapes verwenden.
Code: Alles auswählen
"""<xml var="val">"""
'<xml var="val">'
"<xml var=\"val\">"
Re: print
Verfasst: Sonntag 19. Februar 2012, 13:36
von mina
ich danke Dir ganz herzlich !
Re: print
Verfasst: Sonntag 19. Februar 2012, 13:41
von webspider
mina hat geschrieben:print >> Datei
Und wieder einmal habe ich eine leicht merkwürdig aussehende Art Dinge kürzer zu machen erlernt (generell wird ja das with-Statement empfohlen und explizite Nutzung der Methoden des Datei-Objekts)

Re: print
Verfasst: Sonntag 19. Februar 2012, 15:18
von snafu
webspider hat geschrieben:mina hat geschrieben:print >> Datei
Und wieder einmal habe ich eine leicht merkwürdig aussehende Art Dinge kürzer zu machen erlernt (generell wird ja das with-Statement empfohlen und explizite Nutzung der Methoden des Datei-Objekts)

Hm? Es wird genau so auf einem Dateiobjekt operiert, wie beim `with`-Statement. Die Verkürzung sorgt nur dafür, dass die Datei nicht wieder ordentlich geschlossen wird - sollte man besser nicht machen. Ob ein `print >> datei, text` soviel besser als ein `datei.write(text + '\n')` ist, sei mal dahin gestellt.
Re: print
Verfasst: Montag 20. Februar 2012, 15:37
von mina
Oh Danke, dann folge ich Deinem Rat und nutze den Befehl write...