1. À propos de la méthode swapcase() en Python
En Python, la méthode swapcase() permet d'inverser la casse des caractères d'une chaîne. Les lettres minuscules sont transformées en majuscules et les lettres majuscules sont transformées en minuscules.
Cette méthode peut être utile pour modifier rapidement la casse d'un texte, tester le traitement de chaînes contenant différentes casses ou effectuer certaines transformations de données textuelles.
Dans l'exemple suivant, les lettres minuscules deviennent majuscules et les lettres majuscules deviennent minuscules.
1 2 3 | texte = "Python" resultat = texte.swapcase() print(resultat) |
Sortie :
1 | pYTHON |
Comme les chaînes de caractères Python sont immuables, swapcase() ne modifie pas la chaîne originale. Elle renvoie une nouvelle chaîne contenant le résultat de la transformation.
Le programme suivant permet de vérifier que la chaîne originale reste inchangée après l'utilisation de swapcase().
1 2 3 4 | texte = "PyThOn" resultat = texte.swapcase() print("Chaîne originale :", texte) print("Nouvelle chaîne :", resultat) |
Sortie :
1 2 | Chaîne originale : PyThOn Nouvelle chaîne : pYtHoN |
2. Inverser les majuscules et les minuscules avec swapcase()
La méthode swapcase() s'utilise directement sur une chaîne de caractères et ne prend aucun argument. Chaque lettre possédant une forme majuscule ou minuscule est convertie vers la casse opposée.
Dans l'exemple suivant, toutes les lettres initialement minuscules deviennent majuscules.
1 2 | texte = "python est facile" print(texte.swapcase()) |
Sortie :
1 | PYTHON EST FACILE |
Lorsque la chaîne est entièrement écrite en majuscules, swapcase() effectue la transformation inverse et produit une chaîne en minuscules.
1 2 | texte = "PYTHON EST FACILE" print(texte.swapcase()) |
Sortie :
1 | python est facile |
La méthode devient particulièrement intéressante lorsque la chaîne contient simultanément des lettres majuscules et minuscules.
1 2 3 | texte = "PyThOn EsT FaCiLe" resultat = texte.swapcase() print(resultat) |
Sortie :
1 | pYtHoN eSt fAcIlE |
Chaque lettre est donc traitée individuellement en fonction de sa casse initiale.
3. Comprendre le comportement de swapcase()
Les chiffres et les caractères spéciaux
La méthode swapcase() agit sur la casse des lettres. Les chiffres, les espaces, les signes de ponctuation et les autres caractères qui n'ont pas de casse restent inchangés.
1 2 3 | texte = "Python 3.14 !" resultat = texte.swapcase() print(resultat) |
Sortie :
1 | pYTHON 3.14 ! |
Les caractères accentués
swapcase() fonctionne également avec de nombreux caractères Unicode, notamment les lettres accentuées qui possèdent des formes majuscules et minuscules.
1 2 3 | texte = "École À Oujda" resultat = texte.swapcase() print(resultat) |
Sortie :
1 | éCOLE à oUJDA |
La chaîne vide
L'utilisation de swapcase() sur une chaîne vide ne provoque aucune erreur. Le résultat est également une chaîne vide. Le programme suivant affiche sa longueur afin de rendre le résultat observable.
1 2 3 | texte = "" resultat = texte.swapcase() print("Longueur :", len(resultat)) |
Sortie :
1 | Longueur : 0 |
Appliquer deux fois swapcase()
Pour les chaînes ordinaires composées de lettres dont le changement de casse est réversible caractère par caractère, appliquer swapcase() deux fois permet généralement de retrouver le texte initial.
1 2 3 | texte = "Python EST Facile" resultat = texte.swapcase().swapcase() print(resultat) |
Sortie :
1 | Python EST Facile |
Il faut toutefois éviter d'en faire une règle universelle pour tous les caractères Unicode : certaines transformations de casse Unicode peuvent modifier le nombre de caractères ou ne pas être parfaitement réversibles.
4. Exemples pratiques avec swapcase()
Inverser la casse d'un message
swapcase() peut être utilisée pour transformer rapidement la casse complète d'un message contenant un mélange de majuscules et de minuscules.
1 2 3 | message = "Bonjour PYTHON" message_inverse = message.swapcase() print(message_inverse) |
Sortie :
1 | bONJOUR python |
Transformer plusieurs chaînes d'une liste
La méthode swapcase() peut être appliquée dans une boucle afin d'inverser la casse de plusieurs chaînes contenues dans une liste.
1 2 3 | langages = ["Python", "JAVA", "javaScript"] for langage in langages: print(langage.swapcase()) |
Sortie :
1 2 3 | pYTHON java JAVAsCRIPT |
Utiliser swapcase() avec une compréhension de liste
Une compréhension de liste permet de créer une nouvelle liste contenant les versions transformées des chaînes d'une liste existante.
1 2 3 | mots = ["Python", "Programmation", "Facile"] resultat = [mot.swapcase() for mot in mots] print(resultat) |
Sortie :
1 | ['pYTHON', 'pROGRAMMATION', 'fACILE'] |
Comparer swapcase(), upper() et lower()
Les méthodes upper(), lower() et swapcase() agissent toutes sur la casse, mais leur fonctionnement est différent : upper() convertit les lettres en majuscules, lower() les convertit en minuscules et swapcase() inverse leur casse actuelle.
1 2 3 4 | texte = "PyThOn" print("upper() :", texte.upper()) print("lower() :", texte.lower()) print("swapcase() :", texte.swapcase()) |
Sortie :
1 2 3 | upper() : PYTHON lower() : python swapcase() : pYtHoN |
Compter les lettres dont la casse change
Il est possible de combiner swapcase() avec d'autres fonctionnalités Python. Dans l'exemple suivant, on compte les caractères alphabétiques de la chaîne, c'est-à-dire ceux sur lesquels une inversion de casse est pertinente dans cet exemple.
1 2 3 4 5 | texte = "Python 2026 !" nombre = sum(caractere.isalpha() for caractere in texte) resultat = texte.swapcase() print(resultat) print("Nombre de lettres :", nombre) |
Sortie :
1 2 | pYTHON 2026 ! Nombre de lettres : 6 |
5. À retenir !
La méthode swapcase() est une méthode intégrée aux chaînes de caractères Python permettant d'inverser la casse des lettres d'une chaîne.
- Les lettres minuscules sont transformées en majuscules.
- Les lettres majuscules sont transformées en minuscules.
- La méthode swapcase() ne prend aucun argument.
- Les chiffres, espaces et signes de ponctuation restent inchangés.
- swapcase() prend en charge les transformations de casse Unicode définies par Python.
- La chaîne originale n'est pas modifiée car les chaînes Python sont immuables.
- La méthode renvoie une nouvelle chaîne contenant le résultat.
- upper() convertit les lettres en majuscules tandis que lower() les convertit en minuscules.
- swapcase() se distingue de ces méthodes en inversant la casse actuelle de chaque lettre.
- Appliquer deux fois swapcase() restitue souvent la chaîne initiale pour les textes courants, mais ce comportement ne doit pas être considéré comme universel pour tous les caractères Unicode.
Le programme suivant résume les principaux comportements de swapcase() sur différents types de chaînes.
1 2 3 4 5 6 | texte1 = "Python" texte2 = "PYTHON est FACILE" texte3 = "Python 2026 !" print(texte1.swapcase()) print(texte2.swapcase()) print(texte3.swapcase()) |
Sortie :
1 2 3 | pYTHON python EST facile pYTHON 2026 ! |
Auteur : Younes Derfoufi
Lieu de travail : CRMEF OUJDA
Site Web : www.tresfacile.net
Chaine YouTube : https://www.youtube.com/user/InformatiquesFacile
Me contacter : https://www.tresfacile.net/me-contacter/



