Python überprüfen ob zahl oder nicht
Hey wie kann ich überprüfen, ob bei raw_input eine Zahl eingegeben wurde oder ein anderes zeichen?
3 Antworten
jeder String hat die Funktion .isdigit
Diese returnt true,wenn der String nur aus zahlen besteht und false wenn anderes drin vor kommt
in python 2.** gibt es noch zusätzlich die funktion input welche automatisch die eingabe interpretiert (zB als Zahl oder was auch immer) ... bei python 3 geht dies nicht mehr
suche eine funktion im Handbuch, mit der du einen string mit einem regulären ausdruck vergleichen kannst. dieser Ausdruck ist dann [0-9]
Kann ich nicht einfach: if eingabe != float: Print 'Keine Zahl'
Nimm die
isdigit()
Funktion.
Meine Zahl ist schon ein String und es soll entschieden werden, ob die Zahl jetzt entweder als float weiterverwendet wird oder im Fall von False das Programm beendet wird. isdigit() gibt nur True zurück wenn der String eine ganze Zahl ist, also ein Integer. Wenn ich das aber in einen int umwandeln will mit int(zahl) dann kommt eine fehlermeldung, dass das nicht möglich ist (invalid literal for int() with base 10: '4,5'. 4,5 war die eingegebene Zahl)
m( ich komm nicht weiter... Wenn ich in der Funktion die float zahl in eine int zahl verwandeln will geht das auch nicht
mit isdigit() kannst du nur Strings überprüfen.
Wandle einfach die float Zahl zu einem String um und prüfe es.
Weil ich seit nicht mal einer woche python lerne, willst du mir nicht eben bei der sache helfen? Dann kann ich die mal abschließen Zumindest ein tipp
Ich hab noch nie Python gemacht, habe aber Erfahrung aus anderen Sprachen.
Alle deine Fragen kannst du dir selbst über google beantworten. Dort findest du Lösungen.
Du musst auch lernen es selbst zu schaffen und dir nicht alles vorkauen zu lassen. Hier wurden dir jetzt mehrere Vorschläge geliefert, mit denen es geht, probiere es damit, oder lass es - deine Entscheidung.
Es ist möglich eine zu bauen. Ob ich eine bauen kann, glaube ich nicht, sonst hätte ich nicht gefragt. Kann ich sagen if eingabe != float: print 'Keine Zahl'
Wieso probierst du es nicht? Dann hast du deine Antwort darauf.
Ich will das nicht in einen string verwandeln, ich will eine funktion wie isdigit() die auch mit float klappt
Danke, aber es gibt nen fehler wenn ich 6.4 habe, wie kann ich float zahlen benutzen?