Vous pouvez utiliser des tranches pour récupérer partiellement les éléments d'une liste.
Obtenir les éléments des index 1-3
>>> a = [1,2,3,4,5,6,7,8,9]
>>> a[1:4]
[2, 3, 4]
** * La fin est la valeur de l'indice +1 **
>>> a = [1,2,3,4,5,6,7,8,9]
>>> a[1:8:2] #Éléments avec index 1 à 7 en 2 étapes
[2, 4, 6, 8]
>>> a = [1,2,3,4,5,6,7,8,9]
>>> a[-1]
9
-1 est le dernier élément, -2 est le deuxième élément à l'arrière et -3 est. .. .. (Omis)
>>> 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]
Si le début est omis, le "premier" élément est affiché.
>>> a[0:4]
[1, 2, 3, 4]
Quand
>>> a[:4]
[1, 2, 3, 4]
Est synonyme de
Si la fin est omise, le "dernier" élément est affiché.
>>> a[5:len(a)]
[6, 7, 8, 9]
Quand
>>> a[5:]
[6, 7, 8, 9]
Est synonyme de
>>> a = [1,2,3,4,5,6,7,8,9]
>>> a[-4:]
[6, 7, 8, 9]
je peux tout faire
>>> a[0:len(a)]
Quand
>>> a[:]
Ou
>>> a[::]
Est synonyme de
>>> 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]
#La liste d'origine est une instance distincte de la liste copiée, elle n'est donc pas affectée par les modifications.
>>> a
[1, 2, 3, 4, 5, 6, 7, 8, 9]
Comme mentionné précédemment, des étapes peuvent être spécifiées pour les tranches.
>>> a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[3:8:2] #Index 3-7 en 2 étapes
[4, 6, 8]
Vous pouvez couper dans la direction opposée en procédant comme suit.
>>> a[7:2:-2] #Index 7 ~ 3-En 2 étapes
[8, 6, 4]
Si vous spécifiez toutes les plages et effectuez un pas négatif, les éléments seront inversés.
>>> a[::-1]
[9, 8, 7, 6, 5, 4, 3, 2, 1]
De même pour la chaîne de caractères comme suit.
>>> txt = '123456789'
>>> txt[1:4]
'234'
>>> txt[-1]
'9'
>>> txt[:4]
'1234'
>>> txt[5:]
'6789'
>>> txt[::-1]
'987654321'
Recommended Posts