2016-04-07 15 views
0

entfernen Wenn ich ein 2D-Array haben wie:Python | Wie Subarray von 2D-Array

array = [["hello"], [1,2,3], [4,5,6]] 

Wie kann ich das Programm das erste Unterfeld zu entfernen, so dass es so stellt sich heraus:

array = [[1,2,3], [4,5,6]] 

Wenn ich versuche, array[0].pop[0] zu tun, endet das Array wie folgt auf:

array = [[], [1,2,3], [4,5,6]] 

Antwort

1

Sie müssen

array.pop(0) 

tun Da Sie das erste Element

0

Sie sind das erste Element der ersten Teilliste zu löschen, der Unterliste nicht ganz. Sie können del Anweisung löschen das erste Element verwenden:

>>> array=[["hello"],[1,2,3],[4,5,6]] 
>>> 
>>> del array[0] 
>>> 
>>> array 
[[1, 2, 3], [4, 5, 6]] 

Oder wenn Sie das gelöschte Element erhalten möchten, können Sie array.pop(0) verwenden.

0

Um das erste Element aus array zu entfernen und senden Sie es array.pop(0) verwenden:

>>> array = [["hello"], [1,2,3], [4,5,6]] 
>>> array.pop(0) 
['hello'] 
>>> array 
[[1, 2, 3], [4, 5, 6]] 

Wenn Sie in dem Rückgabewert nicht interessiert sind, können Sie slice Zuordnung oder del verwenden. Diese können verwendet werden, um mehr als einen Artikel zu entfernen.

>>> array = [["hello"], [1,2,3], [4,5,6]] 
>>> array[:1] = [] 
>>> array 
[[1, 2, 3], [4, 5, 6]] 
1

Wenn Sie array[0].pop(0) tun entfernen möchten sind Sie "hello" nicht ["hello"] Da ["hello"] zu entfernen, ist an Position 0 von Array sollten Sie Verwenden Sie

array.pop(0) 
0

array [0] ist die Liste [ „Hallo“], das erste (und einzige) Element in dieser Liste wird die Zeichenfolge „Hallo“, also wenn Sie es Pop erhalten Sie die leere Liste [ ], daher erhalten Sie Ihr Ergebnis.

Wie bereits erwähnt, den richtigen Weg die erste Liste von Array pop wird Array.pop (0)

Verwandte Themen