Eingabe von Text löst traceback aus

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
pythonanfaenger
User
Beiträge: 4
Registriert: Sonntag 21. Dezember 2014, 09:40

hallo
ich verwende linux ubuntu 14.04 lts
die funktion input löst bei eingabe eines buchstaben folgenden fehler aus
Geben Sie etwas ein
a
Traceback (most recent call last):
File "test.py", line 1, in <module>
eingabe=input("Geben Sie etwas ein\n")
File "<string>", line 1, in <module>
NameError: name 'a' is not defined

gebe ich eine zahl ein funktioniert alles super und das obwohl input nicht vorher in int umgewandelt wird

hier der code:

eingabe=input("Geben Sie etwas ein\n")
print eingabe

funktioniert nur mit zahlen

programm aus der konsole heraus mit
anwender@anwender-laptop:~/Dokumente/Projekte/python$ python test.py

ich weiss da sind basics aber wenn solche funktionen schon nicht gehen dann komm ich nicht weiter danke für die hilfe
mutetella
User
Beiträge: 1695
Registriert: Donnerstag 5. März 2009, 17:10
Kontaktdaten:

Hallo pythonanfaenger,

Du verwendest Python 2, das heißt, ``input`` möchte einen Python Ausdruck als Eingabe und führt die Eingabe dann aus, ähnlich wie Du das aus der Pythonkonsole kennst.
Wie auch immer: Wenn Du eine Nutzereingabe haben möchtest, verwendest Du unter Python 2 ``raw_input``.

Code: Alles auswählen

Python 2.7.8 (default, Oct 18 2014, 12:50:18) 
[GCC 4.9.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> a = 10
>>> b = 5
>>> input()
a + b
15
>>> raw_input()
a + b
'a + b'
mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit ;-) )
pythonanfaenger
User
Beiträge: 4
Registriert: Sonntag 21. Dezember 2014, 09:40

vielen dank :D :D :D

habe ich sofort gemacht un es hat geklappt :D

also lautet mein ansatz wie stelle ich in ubuntu von version 2 auf 3 (bin auch ein ubuntu anfänger ) :|
pythonanfaenger
User
Beiträge: 4
Registriert: Sonntag 21. Dezember 2014, 09:40

ich vergass die IDL ist version 3 :shock:
pythonanfaenger
User
Beiträge: 4
Registriert: Sonntag 21. Dezember 2014, 09:40

Hallo habe das Problem gelost.

unter ubuntu ist es möglich beides, version 2 und 3 laufen zu lassen.

es hat mich gewundert dass die IDL unter 3 ausgeführt wird,die input funktion aber nicht aus der konsole heraus funktioniert

somit löste die eingabe eines Buchstaben ein traceback aus

der fehler: wenn man version 3 verwenden möchte sollte man auch den parser dafür einsetzen
statt wie bei mir python test.py
muss es python3 text.py heissen :D :D :D

für die hilfe besten dank :)
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

pythonanfaenger hat geschrieben:unter ubuntu ist es möglich beides, version 2 und 3 laufen zu lassen.
Es sollte eigentlich unter allen Betriebssystemen möglich sein, Python in diversen Geschmacksrichtungen laufen zu lassen. Das können auch mehrere unterschiedliche Python 2 und/oder Python 3 Versionen sein.
Antworten