2016-11-21 5 views
-1

ich diesen einfachen Code mache:Valueerror: Artikel ist nicht in der Liste

MyList=[] 
valueA=1 
valueB=2 
valueC=3 
MyList.append (valueA) 
MyList.append (valueB) 
MyList.append (valueC) 
print (MyList) 
print ([MyList].index(valueB)) 

ich es schaffte die [a] .index (b) eine Erklärung zu versuchen. Soweit ich weiß, und soweit ich im Internet finden konnte, sollte dieser Code in Ordnung sein.

Ich dachte, es würde die Ausgabe geben: 0, weil der Index von valueB 0 sein sollte (korrigieren Sie mich, wenn ich falsch liege). Stattdessen gab er den Ausgang:

print ([MyList].index(valueB)) 
ValueError: 2 is not in list 

ich es glaube nicht, dass irgendwelche Probleme mit der Differenz zwischen Integer, String und Schwimmer.

Kann mir jemand sagen, was ich falsch mache?

Antwort

3

[MyList] ist eine Liste, die aus einem einzigen Element besteht, nämlich MyList.

Ich weiß nicht, warum Sie MyList in einer anderen Liste eingewickelt haben. Sie müssen sich index auf MyList nennen:

print(MyList.index(valueB)) 

Und das Ergebnis wird 1 sein, nicht 0, weil valueB das zweite Element in MyList ist.

+0

Vielen Dank für die Hilfe, ich bin gerade beginnend mit Python, so ein bisschen Hilfe kann manchmal nützlich sein –

0

Ihr Fehler war, dass Sie my_list in eine andere anonyme Liste in der letzten line.It setzen so sein sollte:

MyList=[] 
valueA=1 
valueB=2 
valueC=3 
MyList.append (valueA) 
MyList.append (valueB) 
MyList.append (valueC) 
print (MyList) 
print (MyList.index(valueB)) 

Ausgang:

[1, 2, 3] 
1 
+0

Danke für die Hilfe! –

+0

Willkommen bei Stack Overflow! Wenn dies Ihnen geholfen hat, dann lassen Sie die Community wissen, indem Sie eine Stimme abgeben! :-) – Inconnu

Verwandte Themen