2017-02-01 7 views
1

Im folgenden Python-Code versuche ich, ein 2D-Array zu erstellen, ein Element zu löschen und ein neues an der gleichen angegebenen Position einzufügen. Ich bin in der Lage, ein Element mit einer bestimmten Position zu löschen, aber beim Versuch, einzufügen, bekomme ich den Fehler: IndexError: list index out of range.
Vielen Dank für jede HilfePython Einfügen in 2D-Array: Listenindex außerhalb des Bereichs

tda = [] 
for i in range(0,100): 
    if i % 10 == 0: 
     col = [] 
     tda.append(col) 
    col.append(random.randint(0,10)) 

del tda[1][1] 
tda.insert([1][1],5) 
+0

** ersetzt ein () ** nimmt als Argument die Position, die Sie einfügen möchten. Sie übergeben eine 2D-Position auf die falsche Weise. Vielleicht willst du ** tda [1] .insert (1,5) **? – NAmorim

Antwort

1

Sie den Fehler bekommen, weil Sie [1][1] als Listenindex vorbei sind. Listenindizes müssen Ganzzahlen sein. Zum Beispiel könnten Sie Folgendes tun:

tda[1].insert([5,23,32,53,43]) 

Um eine ganze neue "Zeile" in Ihr 2D-Array einzufügen. Statt Löschen und Einfügen jedoch, sollten Sie nur Index in die Lage möchten Sie es direkt ändern und zu aktualisieren:

tda[1][1] = 5 
0

Versuchen

tda.insert ([1] [1], 5) 

mit

col = tda [1] 
col.insert (1, 5) 
Verwandte Themen