Chaînes de caractères (str)
Les chaînes de caractères (strings, ou str
) en Python sont des séquences immuables de caractères utilisées pour manipuler du texte.
Création d'une chaîne
- Les chaînes peuvent être entourées de guillemets simples (
'
) ou doubles ("
).s1 = 'Hello' s2 = "World"
- Pour des chaînes multi-lignes, utilisez des triples guillemets.
s3 = """Ceci est une chaîne multi-lignes."""
Propriétés principales
- Immutabilité : Une chaîne ne peut pas être modifiée après sa création. Toute opération qui semble "modifier" une chaîne retourne une nouvelle chaîne.
- Indexation : Les caractères sont accessibles via leur position (index).
s = "Python" print(s[0]) # 'P' print(s[2]) # 't' print(s[-1]) # 'n' (index négatif pour accéder à la fin) print(s[12]) # IndexError
Opérations courantes
-
Concaténation et répétition :
s1 = "Hello" s2 = "World" print(s1 + " " + s2) # 'Hello World' print(s1 * 3) # 'HelloHelloHello'
-
Slicing (super pratique) : Extraire une sous-chaîne.
s = "Python" print(s[1:4]) # 'yth' (index 1 à 3) print(s[:3]) # 'Pyt' (début à index 2) print(s[3:]) # 'hon' (index 3 à la fin)
-
Longueur :
print(len("Hello")) # 5
-
Appartenance :
print('P' in "Python") # True print('z' not in "Python") # True
Formattage de chaînes avec des f-strings
name = "Alice"
age = 25
print(f"Je m'appelle {name} et j'ai {age} ans.") # 'Je m'appelle Alice et j'ai 25 ans.'
Quelques méthodes utiles spécifiques aux str (ne pas apprendre par coeur)
Les chaînes disposent de nombreuses méthodes intégrées utiles comme par exemple:
-
Manipulation :
s = " Python " print(s.lower()) # ' python ' print(s.upper()) # ' PYTHON ' print(s.strip()) # 'Python' (supprime les espaces) print(s.replace("Py", "My")) # ' Mython '
-
Test de contenu :
s = "123" print(s.isdigit()) # True print("abc".isalpha()) # True print("abc123".isalnum()) # True