Seite 1 von 1
Listen
Verfasst: Donnerstag 23. März 2017, 00:29
von svhoffma
Hi
Ich habe eine Frage bezüglich Listen:
In meinem Code möchte ich aus einer Endlosschleife heraus je eine Integerzahl eingeben und diese soll dann als index für die Liste "VALUES" verwendet werden. Zuletzt soll der eingetragene Wert ausgegeben werden.
Mein fehlerhafter Code sieht so aus:
Code: Alles auswählen
VALUES = [17, 88, 55, "Genosse der Bosse", "New York", 3.14, "Bremen", "Money for Nothing"]
while True:
a = input (int('Gib Zahl ein'))
print "Index ist:", VALUES.index(a)
Re: Listen
Verfasst: Donnerstag 23. März 2017, 07:27
von Sirius3
@svhoffma: und warum ist der Code fehlerhaft? Was meldet denn Python? Gibt es eine Fehlermeldung?
Re: Listen
Verfasst: Donnerstag 23. März 2017, 11:13
von BlackJack
@svhoffma: Man kann ja erahnen wie der Code ohne den oder die Fehler aussehen müsste, dann tut der aber nicht das was Du im Text des Beitrags beschreibst. Wo sich dann die Frage stellt was stimmt: Der Text oder der Code? Also was genau soll mit der Eingabe des Benutzers passieren?
Antworten hängen bei dem gezeigten Quelltext übrigens ganz stark davon ab welche Python-Version Du verwendest. Das fängt schon damit an welche Fehlermeldung Du bekommst, die bezieht sich bei beiden Versionen nämlich auf eine andere Stelle im Programm.
Re: Listen
Verfasst: Donnerstag 23. März 2017, 11:26
von /me
Um einen Codeteil herauszugreifen:
svhoffma hat geschrieben:
Möchtest du wirklich den String 'Gib Zahl ein' in einen Integer-Wert umwandeln? Offensichtlich nicht. Was also könnte falsch sein?
Re: Listen
Verfasst: Donnerstag 23. März 2017, 18:28
von svhoffma
File "C:/Users/svenm/PycharmProjects/untitled1/3/3_01_2_Listen.py", line 6
print "Index ist:", VALUES.index(a)
Hier ist die Fehlermeldung. Was mache ich am printbefehl falsch?
Re: Listen
Verfasst: Donnerstag 23. März 2017, 18:33
von BlackJack
@svhoffma: Okay, jetzt ist geklärt wo der Fehler ist, nun wäre es eigentlich noch nett zu wissen *welche* Fehlermeldung Du bekommst.
Ich denke *hier* wissen das mittlerweile alle, aber es ist wichtig die komplette Fehlermeldung zu liefern, damit wir nicht raten müssen was denn nun falsch ist.
Was Du beim ``print``-Befehl falsch machst, ist das Du versuchst den in Python 3 zu verwenden. In Python 3 gibt es ``print`` nicht mehr als Befehl. Dort ist daraus eine Funktion geworden. Und für einen Funktionsaufruf ist die Syntax in der Zeile falsch, weswegen Du einen `SyntaxError` bekommst.
Re: Listen
Verfasst: Samstag 25. März 2017, 14:48
von svhoffma
Ups ja das kommt wohl davon, wenn man das noch schnell in der "Mittagspause" der Spätschicht macht.
Natürlich braucht es die komplette Fehlermeldung.
Vielen Dank auf jeden Fall für die ultraschnellen Antworten!
Der korrigierte code würde jetzt übrigens so aussehen:
Code: Alles auswählen
VALUES = [17, 88, 55, "Genosse der Bosse", "New York", 3.14, "Bremen", "Money for Nothing"]
while True:
a = int(input ('Gib Zahl ein'))
print (VALUES[a])