- À propos de la longueur d'une chaîne de caractères en Python
- Calculer la longueur d'une chaîne avec len()
- Comprendre quels caractères sont comptés par len()
- Calculer la longueur d'une chaîne saisie par l'utilisateur
- Utiliser len() pour tester la longueur d'une chaîne
- Exemples pratiques d'utilisation de len() avec les chaînes
- À retenir !
1. À propos de la longueur d'une chaîne de caractères en Python
En Python, une chaîne de caractères est une séquence de caractères représentée par le type str. Il est très fréquent d'avoir besoin de connaître le nombre de caractères contenus dans une chaîne, par exemple pour vérifier un mot de passe, contrôler la longueur d'un identifiant ou analyser un texte.
Python fournit pour cela la fonction intégrée len(). Lorsqu'elle reçoit une chaîne comme argument, elle retourne sa longueur sous la forme d'un nombre entier.
La syntaxe générale est très simple : il suffit de transmettre la chaîne à la fonction len().
1 | len(chaine) |
Sortie :
1 | Un entier correspondant au nombre de caractères de la chaîne. |
Dans ce premier exemple, la chaîne "Python" contient six caractères.
1 2 3 4 5 | texte = "Python" longueur = len(texte) print(longueur) |
Sortie :
1 | 6 |
La fonction len() ne modifie pas la chaîne. Elle calcule simplement le nombre d'éléments qu'elle contient et retourne ce nombre.
2. Calculer la longueur d'une chaîne avec len()
Pour calculer la longueur d'une chaîne stockée dans une variable, il suffit de passer cette variable comme argument à len(). Le résultat peut être affiché directement ou enregistré dans une autre variable.
L'exemple suivant calcule la longueur de la chaîne "Programmation".
1 2 3 4 5 | mot = "Programmation" longueur = len(mot) print("Longueur :", longueur) |
Sortie :
1 | Longueur : 13 |
Il est également possible d'utiliser directement une chaîne littérale comme argument de len(), sans passer par une variable intermédiaire.
1 | print(len("Python")) |
Sortie :
1 | 6 |
La fonction len() peut naturellement être appliquée à une phrase complète. Les espaces font alors partie des caractères comptés.
1 2 3 | phrase = "Python est facile" print("Longueur :", len(phrase)) |
Sortie :
1 | Longueur : 17 |
Dans cette chaîne, les espaces situés entre les mots sont eux aussi comptabilisés.
3. Comprendre quels caractères sont comptés par len()
La fonction len() ne compte pas uniquement les lettres. Les chiffres, espaces, signes de ponctuation et autres caractères présents dans la chaîne participent également à sa longueur.
L'exemple suivant contient des lettres, un espace et un point d'exclamation.
1 2 3 | texte = "Bonjour !" print(len(texte)) |
Sortie :
1 | 9 |
La chaîne contient sept lettres dans "Bonjour", suivies d'un espace et d'un point d'exclamation, soit neuf caractères au total.
Les caractères numériques contenus dans une chaîne sont eux aussi comptés comme des caractères ordinaires.
1 2 3 | code = "Python2026" print(len(code)) |
Sortie :
1 | 10 |
Les caractères spéciaux présents dans une chaîne sont également pris en compte.
1 2 3 | mot_de_passe = "Py@2026!" print(len(mot_de_passe)) |
Sortie :
1 | 8 |
Une chaîne vide ne contient aucun caractère. Sa longueur est donc égale à zéro.
1 2 3 | texte = "" print(len(texte)) |
Sortie :
1 |
Il ne faut pas confondre une chaîne vide avec une chaîne contenant un espace. Un espace est bien un caractère et sa longueur vaut donc 1.
1 2 3 4 5 | chaine_vide = "" un_espace = " " print("Chaîne vide :", len(chaine_vide)) print("Un espace :", len(un_espace)) |
Sortie :
1 2 | Chaîne vide : 0 Un espace : 1 |
4. Calculer la longueur d'une chaîne saisie par l'utilisateur
La fonction input() permet de demander à l'utilisateur de saisir une chaîne. Nous pouvons ensuite utiliser len() pour calculer immédiatement le nombre de caractères saisis.
Le programme suivant demande un prénom puis affiche sa longueur.
1 2 3 | prenom = input("Entrez votre prénom : ") print("Votre prénom contient", len(prenom), "caractères.") |
Sortie possible :
1 2 | Entrez votre prénom : Younes Votre prénom contient 6 caractères. |
Les espaces éventuellement saisis au début ou à la fin sont également comptés. Si nous souhaitons les ignorer, nous pouvons utiliser strip() avant len().
1 2 3 4 5 | texte = input("Entrez un texte : ") texte = texte.strip() print("Longueur sans les espaces extérieurs :", len(texte)) |
Sortie possible :
1 2 | Entrez un texte : Python Longueur sans les espaces extérieurs : 6 |
La méthode strip() retire ici les espaces situés aux extrémités avant le calcul de la longueur. Les espaces éventuellement présents à l'intérieur de la chaîne restent comptés.
5. Utiliser len() pour tester la longueur d'une chaîne
La fonction len() est souvent utilisée dans une condition. Elle permet par exemple de vérifier qu'une chaîne respecte une longueur minimale ou maximale.
Dans l'exemple suivant, nous vérifions qu'un mot de passe possède au moins huit caractères.
1 2 3 4 5 6 | mot_de_passe = "Python26" if len(mot_de_passe) >= 8: print("Longueur du mot de passe valide.") else: print("Le mot de passe est trop court.") |
Sortie :
1 | Longueur du mot de passe valide. |
Nous pouvons également imposer une longueur comprise entre deux valeurs. L'exemple suivant accepte un identifiant contenant entre 5 et 15 caractères.
1 2 3 4 5 6 | identifiant = "python2026" if 5 <= len(identifiant) <= 15: print("Identifiant valide.") else: print("L'identifiant doit contenir entre 5 et 15 caractères.") |
Sortie :
1 | Identifiant valide. |
Une autre utilisation courante consiste à déterminer si une chaîne est vide en comparant sa longueur à zéro.
1 2 3 4 5 6 | texte = "" if len(texte) == 0: print("La chaîne est vide.") else: print("La chaîne contient des caractères.") |
Sortie :
1 | La chaîne est vide. |
Pour tester uniquement si une chaîne est vide ou non, Python permet aussi d'utiliser directement la chaîne comme condition. Cependant, len() reste particulièrement utile lorsque nous devons connaître ou comparer précisément sa longueur.
6. Exemples pratiques d'utilisation de len() avec les chaînes
Comparer la longueur de deux chaînes
La fonction len() peut être utilisée pour comparer deux chaînes et déterminer laquelle contient le plus de caractères.
1 2 3 4 5 6 7 8 9 | mot1 = "Python" mot2 = "Programmation" if len(mot1) > len(mot2): print(mot1, "est le plus long.") elif len(mot1) < len(mot2): print(mot2, "est le plus long.") else: print("Les deux mots ont la même longueur.") |
Sortie :
1 | Programmation est le plus long. |
Trouver le mot le plus long d'une liste
Nous pouvons parcourir une liste de mots et utiliser len() pour conserver celui qui possède le plus grand nombre de caractères.
1 2 3 4 5 6 7 8 9 10 | mots = ["Python", "Java", "Programmation", "PHP"] plus_long = mots[0] for mot in mots: if len(mot) > len(plus_long): plus_long = mot print("Mot le plus long :", plus_long) print("Nombre de caractères :", len(plus_long)) |
Sortie :
1 2 | Mot le plus long : Programmation Nombre de caractères : 13 |
Parcourir une chaîne avec sa longueur
La valeur retournée par len() peut être associée à range() pour parcourir les indices d'une chaîne. Comme les indices commencent à zéro, range(len(texte)) produit les indices allant de 0 jusqu'à len(texte) - 1.
1 2 3 4 | texte = "Python" for i in range(len(texte)): print(i, ":", texte[i]) |
Sortie :
1 2 3 4 5 6 | 0 : P 1 : y 2 : t 3 : h 4 : o 5 : n |
Calculer la longueur sans compter les espaces
Si nous souhaitons compter les caractères d'une phrase sans prendre en compte les espaces, nous pouvons supprimer les espaces avec replace() avant d'utiliser len().
1 2 3 4 5 6 | phrase = "Python est facile" sans_espaces = phrase.replace(" ", "") print("Longueur totale :", len(phrase)) print("Longueur sans espaces :", len(sans_espaces)) |
Sortie :
1 2 | Longueur totale : 17 Longueur sans espaces : 15 |
Cette technique retire ici les caractères espace ordinaires. Pour des traitements textuels plus complexes, il peut être nécessaire de prendre également en compte d'autres caractères d'espacement.
7. À retenir !
La fonction intégrée len() constitue la méthode standard pour obtenir la longueur d'une chaîne de caractères en Python.
- len(chaine) retourne le nombre de caractères de la chaîne.
- La valeur retournée par len() est un entier.
- Les lettres, chiffres, espaces et signes de ponctuation sont comptés.
- Une chaîne vide possède une longueur égale à 0.
- Une chaîne contenant uniquement un espace possède une longueur égale à 1.
- strip() peut être utilisé avant len() pour supprimer les espaces situés aux extrémités.
- replace() peut être utilisé pour retirer certains caractères avant de calculer la longueur.
- len() est souvent utilisée pour vérifier la longueur minimale ou maximale d'une saisie.
- len() peut servir à comparer la longueur de plusieurs chaînes.
- range(len(chaine)) permet de parcourir les indices d'une chaîne.
Le programme suivant réunit plusieurs utilisations essentielles de len() sur une chaîne de caractères.
1 2 3 4 5 6 7 8 9 10 | texte = "Python est facile" print("Texte :", texte) print("Longueur :", len(texte)) print("Longueur sans espaces :", len(texte.replace(" ", ""))) if len(texte) > 10: print("La chaîne contient plus de 10 caractères.") else: print("La chaîne contient au maximum 10 caractères.") |
Sortie :
1 2 3 4 | Texte : Python est facile Longueur : 17 Longueur sans espaces : 15 La chaîne contient plus de 10 caractères. |
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/


