Das ist mein Code und ich versuche zu verstehen, warum ich eine Out-of-Index-Traceback bekomme.
Sie müssen grade[i]
nicht ausführen, da Sie bereits auf die Elemente in der Liste verweisen. Sie müssen dazu lediglich ein einfaches altes i
Dafür gibt es aber bereits eine eingebaute Funktion - sum
Beim Iterieren über eine Liste wird das Element in der Liste zurückgegeben, nicht der Index des Elements. Der richtige Code, wie Sie ihn geschrieben haben, würde so aussehen:
%Vor% Natürlich können andere, die dies beantwortet haben, mit sum
viel eleganter arbeiten .
Wenn Sie den Index für etwas anderes benötigen, können Sie enumerate
so verwenden :
Oder wenn es Ihnen nichts ausmacht, das Objekt überhaupt zu erhalten
%Vor% for i in grades:
iteriert über die Elemente in grades
. Es wird nicht über die Indizes iteriert.
Um Ihren Code zu reparieren, verwenden Sie einfach i
anstelle von grades[i]
.
Haben Sie keine Angst davor, print
-Anweisungen zu verwenden. Sie eignen sich hervorragend zum Debuggen von Code.
Tags und Links python