Hallo COMMUNITY,
ich habe eine Arbeit geschrieben über Phyton.
Und dort hatten wir eine Aufgabe in der wir sollen durch raw_input()
Abfragen ob es ein string oder ein interger wert ist
ich hatte diese idee
#############
a=raw_input()
if a=int:
print 'integer'
if a = string:
print 'string'
#############
villeicht kann mir jemand helfen!!!
mfg
Abfrage string und int
Das funktioniert so leider nicht. Erstens ist "=" kein Vergleich, sondern eine Zuweisung und zweitens kann der Interpreter natürlich nicht ahnen, dass du den Typ deiner Variable mit einem anderen Typ vergleichen willst.
Der pythonische Weg wäre wohl:
Du kannst natürlich auch testen, ob nur Ziffern im String vorkommen (und als erstes Zeichen eventuell noch ein Vorzeichen).
Der pythonische Weg wäre wohl:
Code: Alles auswählen
data = raw_input()
try:
data = int(data)
finally:
pass
print type(data)
Das kannst du in Zeile 7 einfügen, indem du gegen dem Typ vergleichst (oder besser: verwende "instanceof", die Dokumentation hilft dir da). Ein Integer hat den Typ "int" ein String den Typ "string". Den Rest überlasse ich einfach mal Dir als (ganz ganz kleine) Übung.
Damit es "echt pythonisch" wird, müsste man "finally" durch "except" ersetzen ...EyDu hat geschrieben: Der pythonische Weg wäre wohl:Code: Alles auswählen
data = raw_input() try: data = int(data) finally: pass print type(data)
Code: Alles auswählen
data = raw_input()
try:
data = int(data)
except ValueError:
pass
print type(data)
Vielleicht war das auch eine Trickfrage. `raw_intput()` liefert nämlich grundsätzlich Zeichenketten.