Accéder à une partie de chaîne de caractères
Chaque caractère de la chaîne est indexé, c'est-à-dire repéré par un nombre (un numéro), ce qui permet d'avoir un accès rapide au caractère désiré. Ce numéro est un indice ou index.
Soit une variable maphrase
ayant pour valeur : Voici une phrase
Indice | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | ||
| ' | V | o | i | c | i | u | n | e | p | h | r | a | s | e | ' |
Les caractères peuvent aussi être repérés par tranches. Cela permet d'accéder à des sous-séquences par [indice_debut_tranche:indice_fin_tranche:pas]
où pas est égal à 1 s'il n'est pas spécifié.
Exemple :
-> Renvoie une sous-chaîne à partir de l’index[2 : 7]
2
jusqu’à l’index6
.
Anticiper les résultats des instructions suivantes puis les tester en mode console quand vous serez sur un PC...
Exercice
maphrase[7]
Votre choixChoix attenduRéponse
Exercice
len(maphrase)
Votre choixChoix attenduRéponse
C'est le nombre de caractères de la chaîne, y compris les espaces qui font partie de caractères.
Exercice
maphrase[18]
Votre choixChoix attenduRéponse
Exercice
maphrase[-1]
Votre choixChoix attenduRéponse
Exercice
maphrase[-5]
Votre choixChoix attenduRéponse
Exercice
Indice | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | ||
| ' | V | o | i | c | i | u | n | e | p | h | r | a | s | e | ' |
On passe aux tranches... Que retourne maphrase[3:11]
?
Les tranches sont définies de la sorte : [indice_debut_tranche:indice_fin_tranche:pas]
; où pas est par défaut égal à 1 !
[3:11] retourne la chaîne comprise entre l'index 3 et l'index 10.
Exercice
Indice | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | ||
| ' | V | o | i | c | i | u | n | e | p | h | r | a | s | e | ' |
Que retourne maphrase[:11]
?
Les tranches sont définies de la sorte : [indice_debut_tranche:indice_fin_tranche:pas]
; où pas est par défaut égal à 1 !
[:11] pourrait être ré-écrit en [0:11] ; c'est donc du début, jusqu'au caractère d'indice 10.
Exercice
Indice | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | ||
| ' | V | o | i | c | i | u | n | e | p | h | r | a | s | e | ' |
Que retourne maphrase[3:]
?
[3:] signifie que l'on coupe la chaîne de l'indice 3 (compris) au dernier caractère (compris).
Exercice
Indice | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | ||
| ' | V | o | i | c | i | u | n | e | p | h | r | a | s | e | ' |
Que retourne maphrase[::2]
?
On extrait la chaîne complète mais en ne conservant uniquement 1 caractère sur 2, le dernier chiffre est le pas.
Exercice
maphrase[len(maphrase)]