"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Python - Indexation et découpage

Python - Indexation et découpage

Publié le 2024-08-01
Parcourir:892

Python - Indexing and Slicing

L'indexation et le découpage sont un concept important en Python, en particulier lorsque nous utilisons des chaînes.

Indexation :

WKT, la chaîne n'est rien d'autre qu'une séquence de caractères.
Ainsi, chaque caractère a une position à savoir index et accéder à sa position dans cette chaîne particulière est appelé indexation.

En Python, nous avons une indexation de base zéro, c'est-à-dire que le premier caractère d'une chaîne a un index (position) de 0 plutôt que d'en avoir un, puis le deuxième caractère a un index (position) de 1 et ainsi de suite.

Par exemple,

>     H E L L O W O R L D
>     0 1 2 3 4 5 6 7 8 9

C'est ce qu'on appelle indexation positive car nous n'avons utilisé que des nombres positifs pour référencer les indices.

Vous pouvez demander : "Alors, nous avons aussi des indications négatives ??"
Bien sûr, mais ici, nous n'avons pas zéro comme première position car ce n'est pas un nombre négatif.

Indexation négative nous permet d'accéder aux caractères à partir de la fin de la chaîne, c'est-à-dire que le dernier caractère a un indice de -1, l'avant-dernier caractère a un indice de -2, et ainsi de suite.

>      H  E  L  L  O  W  O  R  L  D
>    -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
word = "HELLOWORLD"

print(word[0])
print(word[5])

H
W

De la même manière,

print(word[-1])
print(word[-6])

D
0

C'est tout à propos de l'indexation.


Tranchage :

Pensez à couper une ficelle comme si vous coupiez une tranche de gâteau dans un gâteau entier. Nous pouvons spécifier où commencer la coupe (index), où terminer (index de fin) et même quelle doit être la taille de chaque tranche (étape). De cette façon, nous pouvons créer des portions plus petites du gâteau (ou de la ficelle) exactement comme nous les aimons !

En Python, découper une chaîne nous permet d'en récupérer des parties spécifiques en spécifiant où commencer et où terminer dans la chaîne.
Ainsi, par exemple, si le message contient "HELLOWORLD", alors message[3:7] vous donne "LOWO" car il commence à l'index 3 ("L") et se termine juste avant l'index 7 ("D"). De cette façon, nous pouvons extraire n'importe quelle partie d'une chaîne dont nous avons besoin !

 - La syntaxe de base pour le découpage est : 

string[start:stop]
  • L'index de départ est l'endroit où commence la tranche, et cet index est inclusif.
  • L'index d'arrêt est l'endroit où se termine la tranche, mais cet index est exclusif, ce qui signifie que le caractère à cet index n'est pas inclus dans la tranche.
text = "HappyBirthday"

print(text[0:5])  
print(text[5:13])

Happy
Birthday  

Lors du découpage d'une chaîne en Python, nous pouvons simplement omettre l'index de début ou d'arrêt pour trancher depuis le début ou jusqu'à la fin de la chaîne.
C'est aussi simple que ça !

- Trancher en une étape,

Pour spécifier l'intervalle entre les caractères lors du découpage d'une chaîne en Python, ajoutez simplement deux points suivis de la valeur de l'étape :

string[start:stop:step]

Cela permet de contrôler la façon dont nous voulons parcourir les caractères de la chaîne lors de la création d'une tranche.

message = "HELLOWORLD"
print(message[1::2])    

EORL

message[1::2] commence le découpage de l'index 1 (« E ») jusqu'à la fin de la chaîne, avec un pas de 2.
Par conséquent, il comprend des caractères aux indices 1, 3, 5 et 7, nous donnant « EORL ».

Jusqu'à présent, nous avons vu le le découpage positif et apprenons maintenant le découpage négatif.

 – Découpage négatif :

  • Une étape négative vous permet de découper la chaîne dans l'ordre inverse.
  • Découpons de l'avant-dernier caractère au troisième caractère dans l'ordre inverse
message = "HELLOWORLD"
print(message[-2:2:-1])

ROWOL

Regardons certaines questions.

#Écrivez une fonction qui prend une chaîne et renvoie une nouvelle chaîne composée de son premier et de son dernier caractère.

word = "Python"
end = word[0] word[5]
print(end)

Pn

#Écrivez une fonction qui inverse une chaîne donnée.

word = "Python"
print(word[::-1])

nohtyP

#À partir d'une chaîne, extrayez et renvoyez une sous-chaîne du 3ème au 8ème caractère (inclus).

text = "MichaelJackson"
print(text[3:9])

haelJa

#À partir d'une adresse e-mail, extrayez et renvoyez le domaine.

email = "[email protected]"
domain = email[:-10]
print(domain)

hello_world

#Écrivez une fonction qui renvoie un caractère sur trois à partir d'une chaîne donnée.

text = "Programming"
print(text[::3])

Pgmn

#Écrivez une fonction qui saute un caractère sur deux, puis inverse la chaîne résultante.

text1 = "Programming"
print(text1[::-2])

gimroP

#Écrivez une fonction qui extrait et renvoie les caractères aux indices pairs d'une chaîne donnée.

text = "Programming"
print(text[::2])

Pormig

Très bien, c'est l'essentiel ici.

.....

Déclaration de sortie Cet article est reproduit sur : https://dev.to/abys_learning_2024/python-indexing-and-slicing-2moh?1 En cas d'infraction, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3