Seite 1 von 1

raw strings

Verfasst: Donnerstag 2. März 2006, 09:15
von Rebecca
Ich wuerde gerne mal die Escape-Seuenzen in meinen Strings sehen. Sowas wie:

Code: Alles auswählen

>>> print r"hallo\nleute"
hallo\nleute
Was mache ich aber mit einer String-Variablen?

Code: Alles auswählen

mein_string = "guten\ntag"

Verfasst: Donnerstag 2. März 2006, 09:16
von mitsuhiko

Code: Alles auswählen

mein_string = r'mein\nstring'

Verfasst: Donnerstag 2. März 2006, 09:25
von Rebecca
Oh, ich habe mich wohl schlecht ausgedrueckt.

mein_string habe ich schon irgendwo herbekommen.
In meinem Fall sowas wie

Code: Alles auswählen

mein_string = os.read(fd, 20)
Ich brauch also eine Moeglichkeit, ihn nachtraeglich als raw string auszugeben.

Verfasst: Donnerstag 2. März 2006, 09:26
von mitsuhiko

Code: Alles auswählen

mein_string = mein_string.encode('string-escape')
:wink:

Oder hackish:

Code: Alles auswählen

mein_string = repr(mein_string)[1:-1]

Verfasst: Donnerstag 2. März 2006, 09:34
von Rebecca
Aaah! :)

"string_escape" also.

...und jetzt seh ich auch, wo es in der Dokumentation steht. Ich war so auf "raw" fixiert....

Danke fuer die schnelle Hilfe. Jetzt kann ich endlich mal sehen, was abgeht... 8)

Verfasst: Donnerstag 2. März 2006, 10:24
von BlackJack
Wenn es Dir nur um die Ausgabe, zum Beispiel zur Fehlersuche geht, dann kannst Du auch `repr()` benutzen bzw. beim Formatieren mit ``%`` kann man mit "%r" diese Darstellung benutzen.