Maîtriser les opérations sur chaînes Python : Replace, Join, Split, Reverse et Conversion de casse
En Python, chaque entité est un objet — y compris les chaînes. Une chaîne est simplement une séquence de caractères entre guillemets.
Exemple :var = "Hello World!"
Ce guide vous guide à travers les opérations sur chaînes les plus courantes, appuyées par des exemples réels et des conseils de bonnes pratiques.
- Accéder aux caractères avec le slicing
- Opérateurs de chaînes et concaténation
- Remplacer des sous-chaînes
- Changer la casse (upper/lower/capitalize)
- Utiliser
joinpour concaténation flexible - Inverser des chaînes
- Diviser des chaînes
Accéder aux caractères dans les chaînes
Python n'a pas de type caractère distinct ; les caractères simples sont simplement des chaînes de longueur 1. Utilisez des crochets et indices pour trancher.
var1 = "Guru99!"
var2 = "Software Testing"
print("var1[0]:", var1[0])
print("var2[1:5]:", var2[1:5])
Sortie :var1[0]: G
var2[1:5]: oftw
Opérateurs de chaînes
Les opérateurs permettent une manipulation rapide :
| Opérateur | Description | Exemple |
|---|---|---|
| [] | Accéder à un seul caractère | x = "Guru" |
| [:] | Trancher une plage (fin exclusive) | x = "Guru" |
| in / not in | Vérifier l'appartenance | print("u" in x) — True |
| r/R | Littéral de chaîne brute (caractères d'échappement ignorés) | print(r"\n") — affiche "\\n" |
| % | Formatage de chaîne (ancien style) | print('%s %d' % ('guru', 99)) — "guru 99" |
| + | Concaténer deux chaînes | print("Guru" + "99") — "Guru99" |
| * | Répéter une chaîne | print("Guru" * 2) — "GuruGuru" |
Mettre à jour une chaîne
Comme les chaînes sont immuables, réassignez la variable à une nouvelle valeur.
x = "Hello World!" print(x[:6]) # "Hello" print(x[0:6] + "Guru99") # "Hello Guru99"
Remplacer des sous-chaînes
La méthode replace() retourne une nouvelle chaîne avec toutes les occurrences d'une sous-chaîne remplacées.
ancien = "I like Guru99"
nouveau = ancien.replace('like', 'love')
print(nouveau) # "I love Guru99"
Changer la casse
Convertir en majuscules, minuscules, ou capitaliser le premier caractère.
texte = "python at guru99" print(texte.upper()) # "PYTHON AT GURU99" print(texte.capitalize()) # "Python at guru99" print(texte.upper().lower()) # retour en minuscules
Joindre des caractères
La méthode join() concatène un itérable de chaînes en utilisant un séparateur.
print(":".join("Python")) # "P:y:t:h:o:n"
Inverser une chaîne
Utilisez reversed() et join() pour inverser.
s = "12345"
print(''.join(reversed(s))) # "54321"
Diviser des chaînes
Séparez une chaîne en liste basée sur un délimiteur.
phrase = "guru99 career guru99"
print(phrase.split(' ')) # ['guru99', 'career', 'guru99']
print(phrase.split('r')) # ['gu', 'u99 ca', 'ee', ' gu', 'u99']
Rappel sur l'immuabilité
Les chaînes ne peuvent pas être modifiées sur place. Les méthodes comme replace() retournent une nouvelle chaîne.
x = "Guru99"
print(x.replace("Guru99", "Python")) # toujours "Guru99"
# Pour changer la variable
x = x.replace("Guru99", "Python")
print(x) # "Python"
Compatibilité Python 2
Ci-dessous le code équivalent pour Python 2, utilisant des instructions print sans parenthèses.
# Accès aux valeurs
var1 = "Guru99!"
var2 = "Software Testing"
print "var1[0]:", var1[0]
print "var2[1:5]:", var2[1:5]
# Exemple mise à jour
x = "Hello World!"
print x[:6]
print x[0:6] + "Guru99"
# Exemple replace
old = 'I like Guru99'
print old.replace('like', 'love')
# Conversion de casse
texte = "python at guru99"
print texte.upper()
print texte.capitalize()
print texte.lower()
# Join
print ":".join("Python")
# Reverse
s = "12345"
print ''.join(reversed(s))
# Split
mot = "guru99 career guru99"
print mot.split(' ')
print mot.split('r')
# Démo immuabilité
x = "Guru99"
print x.replace("Guru99", "Python")
x = x.replace("Guru99", "Python")
print x
Résumé
- Utilisez le slicing (
[],[:]) pour un accès précis aux caractères. - Exploitez les opérateurs de chaînes (+, *, in, not in) pour concaténation et tests d'appartenance.
- Appliquez
replace()pour substituer des sous-chaînes ; rappelez-vous qu'elle retourne une nouvelle chaîne. - Convertissez la casse avec
upper(),lower(),capitalize(). - Combinez
join()avec n'importe quel séparateur pour concaténation flexible. - Inversez avec
reversed()etjoin(), divisez avecsplit(). - Réassignez toujours pour capturer les changements dus à l'immuabilité des chaînes.
Python
- Maîtriser les chaînes de caractères en Java : Création, méthodes et bonnes pratiques
- Maîtriser les représentations en chaînes dans les enums Java
- Chaînes de caractères en C simplifiées : Déclaration, entrée, sortie et fonctions de bibliothèque
- Maîtriser le remplacement de chaînes Java : replace(), replaceAll() et replaceFirst() expliqués
- Java String toLowerCase() & toUpperCase() : Convertir la casse du texte avec prise en compte des locales
- Fonction Python print() : Guide pratique avec exemples
- Maîtriser la méthode strip() de Python : Guide complet et exemples pratiques
- Maîtriser str.count() de Python : Compter caractères et sous-chaînes avec exemples
- Maîtriser les chaînes format() en Python avec exemples clairs