Buchstaben auf den Kopf stellen
"eval()" ist nicht Dein Ernst, oder? Denk doch mal darüber nach, welcher Typ für die Arbeit mit Unicode-Zeichenketten angebracht ist
Spoiler: ǝpoɔıun
Spoiler: ǝpoɔıun
Hab ich längst probiert:
Etwas anderes ist mir nicht eingefallen.
Code: Alles auswählen
>>> print unicode(FLIPS['a'])
\u0250
Code: Alles auswählen
print u'\u026F'.encode('utf-8')
Es geht ja darum, etwas variables einzusetzen:
Code: Alles auswählen
>>> print u'{0}'.format(FLIPS['a']).encode('utf-8')
\u0250
>>> print u'\u0250'.encode('utf-8')
ɐ #umgedrehtes a
@snafu: Ich möcht mich da mal Lunar anschliessen: Nicht Dein Ernst oder!? Was ist denn der Unterschied zwischen den beiden Zeilen, ausser dass das eine "variabel" ist und das andere ein festes Zeichen verwendet!? Genau: In `FLIPS` stecken *Zeichenketten* und bei dem Beispiel mit dem festen Wert verwendest Du keine Zeichenkette, sondern ein literales *Unicode-Objekt*. Nun überleg mal, ausgehend von dem Beispiel mit dem festen Wert, was man in das Dictionary stecken könnte, damit das auch mit variablen Werten funktioniert.
Überall ein `u''` vorschreiben, aber ist das der einzige Weg? Wäre es in Hinblick au die Konsistenz sinnvoll, grundsätzlich Unicode zurückzugeben oder besser nur dann, wenn Unicode gebraucht wird?
Code: Alles auswählen
from __future__ import unicode_literals
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Ja, sonst fliegen Funktionen nicht zufällig auf die Nase, nur weil da mal ausnahmsweise kein ``str`` rauskommt sondern ein ``unicode``. Das ist ja eben das große Problem von Python 2.x, dass Code plötzlich irgendwo crasht, weil der Programmierer nicht vergesehen hat, dass irgendwer irgendwelche nicht-ASCII-Zeichen eingibt.snafu hat geschrieben:Wäre es in Hinblick au die Konsistenz sinnvoll, grundsätzlich Unicode zurückzugeben
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Ah, sehr geil. Endlich hab ich den Sinn davon verstanden.ice2k3 hat geschrieben:Code: Alles auswählen
from __future__ import unicode_literals
http://paste.pocoo.org/show/149581/