Ich versuche, Elemente aus einer verschachtelten Liste in Python zu entfernen. Ich habe eine verschachtelte Liste wie folgt:Entfernen von Elementen aus einer verschachtelten Liste Python
families = [[0, 1, 2],[0, 1, 2, 3],[0, 1, 2, 3, 4],[1, 2, 3, 4, 5],[2, 3, 4, 5, 6]]
ich die Einträge in jeder Unterliste entfernen möchten, die auf die indexierte Position des sublist in der Masterliste coorespond. Also zum Beispiel, ich muss 0 aus der ersten Unterliste entfernen, 1 aus der zweiten Unterliste, etc. Ich versuche, eine Listenbefugnis zu verwenden, dies zu tun. Dies ist, was ich versucht habe:
familiesNew = [ [ families[i][j] for j in families[i] if i !=j ] for i in range(len(families)) ]
Dies funktioniert für range(len(families))
bis zu 3, aber darüber hinaus, dass ich IndexError: list index out of range
bekommen. Ich bin mir nicht sicher warum. Kann mir jemand eine Idee geben, wie man das macht? Vorzugsweise ein Einzeiler (Listenverständnis).
Danke.
Danke, ich mit der letzten Option beschlossen zu gehen, wie es in der Tat in Ordnung und wünschenswert war die Liste an Ort und Stelle zu ändern. – johntfoster