Sie können Slices verwenden, um die Elemente einer Liste teilweise abzurufen.
Elemente der Indizes 1-3 abrufen
>>> a = [1,2,3,4,5,6,7,8,9]
>>> a[1:4]
[2, 3, 4]
** * Das Ende ist der Wert von Index +1 **
>>> a = [1,2,3,4,5,6,7,8,9]
>>> a[1:8:2] #Elemente mit den Indizes 1 bis 7 in 2 Schritten
[2, 4, 6, 8]
>>> a = [1,2,3,4,5,6,7,8,9]
>>> a[-1]
9
-1 ist das letzte Element, -2 ist das zweite Element von hinten und -3 ist. .. .. (Weggelassen)
>>> a[-2]
8
>>> a[-3]
7
>>> a[-4]
6
>>> a = [1,2,3,4,5,6,7,8,9]
>>> a[5:20]
[6, 7, 8, 9]
>>> a[-100:4]
[1, 2, 3, 4]
Wenn der Anfang weggelassen wird, wird das "erste" Element angezeigt.
>>> a[0:4]
[1, 2, 3, 4]
Wann
>>> a[:4]
[1, 2, 3, 4]
Ist gleichbedeutend mit
Wenn das Ende weggelassen wird, wird das "letzte" Element angezeigt.
>>> a[5:len(a)]
[6, 7, 8, 9]
Wann
>>> a[5:]
[6, 7, 8, 9]
Ist gleichbedeutend mit
>>> a = [1,2,3,4,5,6,7,8,9]
>>> a[-4:]
[6, 7, 8, 9]
ich kann alles tun
>>> a[0:len(a)]
Wann
>>> a[:]
Oder
>>> a[::]
Ist gleichbedeutend mit
>>> a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[0:len(a)]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[:]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[::]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> b = a[-5:]
>>> b
[5, 6, 7, 8, 9]
>>> b[1] = 60
>>> b
[5, 60, 7, 8, 9]
#Die ursprüngliche Liste ist eine separate Instanz von der kopierten Liste, sodass sie von den Änderungen nicht betroffen ist.
>>> a
[1, 2, 3, 4, 5, 6, 7, 8, 9]
Wie bereits erwähnt, können Schritte für Slices angegeben werden.
>>> a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[3:8:2] #Indizes 3-7 in 2 Schritten
[4, 6, 8]
Sie können in die entgegengesetzte Richtung schneiden, indem Sie die folgenden Schritte ausführen.
>>> a[7:2:-2] #Index 7 ~ 3-In 2 Schritten
[8, 6, 4]
Wenn Sie alle Bereiche angeben und einen Minusschritt ausführen, werden die Elemente umgekehrt.
>>> a[::-1]
[9, 8, 7, 6, 5, 4, 3, 2, 1]
Ähnliches gilt für die Zeichenkette wie folgt.
>>> txt = '123456789'
>>> txt[1:4]
'234'
>>> txt[-1]
'9'
>>> txt[:4]
'1234'
>>> txt[5:]
'6789'
>>> txt[::-1]
'987654321'
Recommended Posts