Wie kann man noch herausfinden, ob eine Variable ein Integer ist?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
MaximalMax
User
Beiträge: 18
Registriert: Sonntag 3. Mai 2020, 00:51

Ich kenne nur die beiden Methoden:

Code: Alles auswählen

var = 1

if type(var) == int:
	print(var, "ist ein Integer")
und

Code: Alles auswählen

var = 1

if var = int(var):
	print(var, "ist ein Integer")
Sirius3
User
Beiträge: 18274
Registriert: Sonntag 21. Oktober 2012, 17:20

Die beiden Code-Stücke machen ja verschiedene Dinge (wobei der zweite einen Syntaxfehler enthält). Was willst Du eigentlich machen?

Statt per type direkt den Typ abzufragen benutzt man isinstance:

Code: Alles auswählen

if isinstance(var, int):
    print("var ist ein Integer")
Eingerückt wird immer mit 4 Leerzeichen pro Ebene, keine Tabs.
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

Es hängt davon ab, ob man auch abgeleitete Klassen möchte. Meistens möchte man das.

So ist zum Besipiel `bool` von `int` abgeleitet:

Code: Alles auswählen

>>> type(True) == int
False
>>> isinstance(True, int)
True
Benutzeravatar
DeaD_EyE
User
Beiträge: 1240
Registriert: Sonntag 19. September 2010, 13:45
Wohnort: Hagen
Kontaktdaten:

Manchmal ist es auch nicht erwünscht explizit auf einen bestimmten Typen zu bestehen.
Es kommt immer auf die Situation an.
sourceserver.info - sourceserver.info/wiki/ - ausgestorbener Support für HL2-Server
Antworten