Den Typ von Variablen in Python prüfen
In Python möchte man oft wissen ob eine Variable ein String, eine Liste oder ein Dictionary ist. Es gibt dazu verschiedene Ansätze aber im folgenden soll der flexibelste Weg beschrieben werden. Dieser funktioniert sowohl für normale ASCII-String als auch für die kodierten Varianten (unicode, utf-8) und für alle Typen die von den Standard-Typen wie basestring, ListType, DictType ableiten.
Prüfen ob die Variable ein String ist?
>>> my_var = "huhu" >>> isinstance(my_var, basestring) True >>> my_var = u"huhu" >>> isinstance(my_var, basestring) True >>> my_var = ['huhu'] >>> isinstance(my_var, basestring) False
Prüfen ob die Variable eine Liste ist?
>>> import types >>> my_var = ['Hallo', 'Welt'] >>> isinstance(my_var, types.ListType) True >>> my_var = u"huhu" >>> isinstance(my_var, types.ListType) False
Prüfen ob die Variable ein Dictionary ist?
>>> import types >>> my_var = {'Hallo': 'Welt'} >>> isinstance(my_var, types.DictType) True >>> my_var = u"huhu" >>> isinstance(my_var, types.DictType) False