Si vous touchez Python dans une certaine mesure, vous pouvez voir le mot slice, mais je pense que vous pouvez le comprendre parce que vous l'utilisez souvent, mais c'était en fait assez compliqué, alors je l'ai écrit sous forme d'article.
Une tranche est une syntaxe (?) Qui vous donne un accès facile aux éléments d'une séquence.
Les opérations de tranche sont disponibles dans les types couramment utilisés tels que list et str, donc connaître les tranches peut être très utile.
Utilisez-le comme une [Position de départ: Position de fin].
Par exemple
a = [1, 2, 3, 4, 5]
print(a[0: 4])
print(a[: 4])
print(a[-3:])
print(a[2: -1])
>>>
[1, 2, 3, 4]
[1, 2, 3, 4]
[3, 4, 5]
[3, 4]
C'est comme ça. Si vous n'entrez rien à la position de départ, il sera traité comme 0, et si vous n'entrez rien à la position finale, il sera traité comme la fin, il est donc préférable de ne pas écrire dans un tel cas.
Cela peut être un peu déroutant s'il y a un moins, mais si vous l'utilisez, vous pouvez facilement spécifier la liste et la fin, donc si vous vous y habituez, le monde changera (je pense que c'est un peu exagéré).
Jusque-là, je connaissais les tranches, mais en réalité il y avait une façon d'écrire plus compliquée ...!
a [Position de départ: Position finale: Incrément de tranche].
En spécifiant l'incrément de la tranche, vous pouvez "obtenir l'élément tous les nièmes".
Par exemple
a = [1, 2, 3, 4, 5]
print(a[:: 2])
print(a[1:: 2])
print(a[::-1])
print(a[1::-1])
>>>
[1, 3, 5]
[2, 4]
[5, 4, 3, 2, 1]
[2, 1]
est. Voilà ce que c'est. C'est compliqué, mais ce serait bien si vous pouviez le maîtriser! Surtout -1 semble être tout à fait utilisable.
Cependant, si vous combinez ces trois éléments, il faudra peut-être un certain temps pour comprendre. Quand j'ai revu le programme que j'ai créé plus tôt, c'était comme: "Quoi? Qu'arrivera-t-il à cela?"
Je ne sais pas s'il est bon de considérer la lisibilité, mais je pense que cela vaut la peine de le savoir.
C'est pourquoi c'était une histoire dont les tranches sont également profondes.
Recommended Posts