[Python-de] str in andere Typen wandeln

"Martin v. Löwis" martin at v.loewis.de
Mit Feb 1 08:01:07 CET 2006


Andreas Pakulat wrote:
> Stimmt, der allgemeine Fall ist nicht ganz so einfach wie hier. Ich hab
> aber XML-Schema-booleans und die duerfen nur 4 Zustaende annehmen, alles
> andere ist (bei mir) False.

Genau. *Wenn* es in Python eine Funktion gäbe, würde die vermutlich
nicht die Schema-Werte unterstützen, sondern eher "True" und "False".
MaW: Du müsstest Dir in jedem Fall eine eigene Funktion schreiben;
ich würde es so formulieren

schema_bools = {"false":0, "0": 0, "true":1, "1":1 }
def schema_bool(s):
    return schema_bools[s.strip()]

(ich glaube, Leerzeichen am Anfang und Ende eines xsd:boolean-Literals
sind erlaubt, oder?)

Dass der Rest (also etwa "Andreas") bei Dir False ist finde ich nur
mehr verwirrend: eigentlich liegt doch dann eine Schema-Verletzung
vor, oder? Eine in Python vordefinierte Funktion würde sich nie so
verhalten (errors should never pass silently).

Ciao,
Martin