Chaines de caracteres
Les chaines de caracteres sont partout : noms, textes, mots de passe... Apprends a les manipuler comme un pro avec l'indexation, le slicing et les methodes Python !
Objectifs du cours
- Comprendre l'indexation des chaines (positif et negatif)
- Maitriser le slicing (extraction de sous-chaines)
- Utiliser les methodes principales des chaines
- Formater des chaines avec les f-strings
- Manipuler et transformer du texte
Erreurs courantes a eviter
- Oublier que les indices commencent a 0
- Confondre chaine[1] (2eme caractere) et chaine[0] (1er)
- Les chaines sont immuables : on ne peut pas les modifier directement
- Oublier les guillemets pour les chaines dans les comparaisons
**Qu'est-ce que l'indexation ?**
Chaque caractere d'une chaine a un numero (index) qui permet de l'identifier.
**Indices positifs (de gauche a droite) :** ``` P Y T H O N 0 1 2 3 4 5 ```
**Indices negatifs (de droite a gauche) :** ``` P Y T H O N -6 -5 -4 -3 -2 -1 ```
**Syntaxe :** ```python mot = "PYTHON" print(mot[0]) # P (premier caractere) print(mot[5]) # N (sixieme caractere) print(mot[-1]) # N (dernier caractere) print(mot[-2]) # O (avant-dernier) ```
**Important :** - Les indices commencent a 0, pas a 1 ! - L'indice -1 represente toujours le dernier caractere
# Indexation des chaines
mot = "PYTHON"
print("=== INDICES POSITIFS ===")
print(f"mot = '{mot}'")
print(f"mot[0] = '{mot[0]}' (1er caractere)")
print(f"mot[1] = '{mot[1]}' (2eme caractere)")
print(f"mot[5] = '{mot[5]}' (6eme caractere)")
print("\n=== INDICES NEGATIFS ===")
print(f"mot[-1] = '{mot[-1]}' (dernier)")
print(f"mot[-2] = '{mot[-2]}' (avant-dernier)")
print(f"mot[-6] = '{mot[-6]}' (premier = -len)")
# Parcourir caractere par caractere
print("\n=== PARCOURS AVEC INDICES ===")
for i in range(len(mot)):
print(f"mot[{i}] = '{mot[i]}'")
# Application : verifier le premier/dernier caractere
print("\n=== APPLICATION ===")
email = "alice@email.com"
print(f"Email : {email}")
print(f"Premier caractere : '{email[0]}'")
print(f"Dernier caractere : '{email[-1]}'")
print(f"Commence par 'a' ? {email[0] == 'a'}")Quiz de validation
1. Quel est l'indice du premier caractere d'une chaine ?
2. Que retourne 'Python'[-1] ?
3. Que retourne 'ABCDEF'[1:4] ?
4. Comment inverser une chaine en Python ?
5. Quelle methode transforme 'bonjour' en 'BONJOUR' ?
