Python ganze Zahl erkennen?

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Du kannst ja überprüfen, ob deine Variable ein integer ist mit

isinstance(i,int)
Raytex27 
Fragesteller
 20.10.2019, 15:02

Bei mir ist das so, ich hab einen Term, für den ich mehre Möglichkeiten durchgehen lasse und ich will nur die ganzzahligen auf der Konsole haben. Bei mir sind nämlich alle foats.

0
hairybear  20.10.2019, 15:05
@Raytex27

Aso, dann liegen dir die also als floats vor. Vielleicht kannst du ja mal versuchen mit der modulo Operation zu schauen, ob deine floats ganzzahlig teilbar durch 1 sind.

if i % 1 == 0:
  return True
return False

#edit

die float Klasse scheint eine eigene Methode dafür zu haben.

i.is_integer()

Ich würde eher dies benutzen.

1

ich kenne python zwar nicht, aber in jeder anderen sprache würde ich prüfen, ob es einen nachkommaanteil anders als null gibt (frac() == 0) oder ob der gerundete wert gleich dem ungerundeten ist (round(x) == x)

Du kannst mit

if a%1==0:
  #ganzzahlig

auch floats überprüfen.