Calculer la longueur d'une chaîne avec len() en Python

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().

Sortie :

Dans ce premier exemple, la chaîne "Python" contient six caractères.

Sortie :

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".

Sortie :

Il est également possible d'utiliser directement une chaîne littérale comme argument de len(), sans passer par une variable intermédiaire.

Sortie :

La fonction len() peut naturellement être appliquée à une phrase complète. Les espaces font alors partie des caractères comptés.

Sortie :

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.

Sortie :

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.

Sortie :

Les caractères spéciaux présents dans une chaîne sont également pris en compte.

Sortie :

Une chaîne vide ne contient aucun caractère. Sa longueur est donc égale à zéro.

Sortie :

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.

Sortie :

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.

Sortie possible :

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().

Sortie possible :

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.

Sortie :

Nous pouvons également imposer une longueur comprise entre deux valeurs. L'exemple suivant accepte un identifiant contenant entre 5 et 15 caractères.

Sortie :

Une autre utilisation courante consiste à déterminer si une chaîne est vide en comparant sa longueur à zéro.

Sortie :

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.

Sortie :

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.

Sortie :

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.

Sortie :

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().

Sortie :

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.

Sortie :

 




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/


Leave a Reply

Your email address will not be published. Required fields are marked *