2016-03-27 13 views
-2

Ich habe eine Liste der Liste der Punkte namens pts2. Ich möchte eine neue Liste von Punkten aus pts2 erstellen, die bestimmte Bedingungen erfüllen. Ich erhalte jedoch weiterhin Fehler. Ich weiß nicht, was falsch(IndexOutOfRangeException): Index außerhalb des Bereichs

ging
pts2 = [[point1, point2],[point3, point4], [point5,point6]] 
pts3 = [] 

for i in (0,pts2.Count): 
    if (pts2[i][1].X - pts2[i][0].X) < 0 or (pts2[i][1].Y - pts2[i][0].Y) < 0 or (pts2[i][1].Z - pts2[i][0].Z) < 0: 
    pts3.append(None) #dont add any point 

Error: Runtime error (IndexOutOfRangeException): index out of range: 64

+0

Kannst du auf dieses Item zugreifen 'pts2 [i] [2]' ?? ... Die Indizierung der Liste beginnt bei 0. –

+0

Seltsam, nachdem du einige Punkte erfunden hast, löst dein Code 'AttributeError' aus, wenn ich ihn ausführe. – Goyo

+0

Hallo Dank für deine Antwort, ich habe es geschafft, es zu beheben. –

Antwort

3

Ihre Punktlisten sind nur 2 lang, aber Sie verweisen PTS2 [i] [2], die die dritte Position ist. Dies wird natürlich eine Ausnahme auslösen, da Ihre Punkte keine dritte Position haben.

+0

Oh sorry, mein sorgloser Fehler. es sollte [0] und [1] sein. Jetzt meldet es jedoch Runtime-Fehler (IndexOutOfRangeException): Index außerhalb des Bereichs: 64 –

+0

@NguyenMinhChau Sie müssen Ihren Code überarbeiten und bieten eine bessere [MCVE] (http://stackoverflow.com/help/mcve). Aufgrund der Frage, wie Sie Ihre ursprüngliche Frage formuliert haben, ist diese Antwort richtig. Stellen Sie sicher, dass das, was Sie als Frage posten, eine korrekte Darstellung Ihres tatsächlichen Problems ist. – idjaw

Verwandte Themen