Python Fonction len() : Comment trouver la longueur de la chaîne

⚡ Résumé intelligent

Python len() est une fonction intégrée qui renvoie le nombre d'éléments dans un objet, tels que les caractères d'une chaîne ou les éléments d'une liste, d'un tuple, d'un dictionnaire ou d'un ensemble.

  • (I.e. syntaxe: la fonction len(object) prend un seul argument et renvoie un entier, le nombre total d'éléments qu'elle contient.
  • (I.e. Cordes: Pour une chaîne de caractères, la fonction len() compte chaque caractère, y compris les espaces, les chiffres et les signes de ponctuation.
  • 📦 Collections: la fonction len() mesure la taille des listes, des tuples, des dictionnaires, des ensembles et des objets range de la même manière.
  • ⚙️ Performance : la fonction len() s'exécute en temps constant O(1) car Python stocke la longueur de chaque objet comme un attribut.
  • 🚫 Erreur-type: Appeler la fonction len() sur un entier ou None lève une exception TypeError, car ces types n'ont pas de longueur.
  • 🤖 Aide à l'IA : Les assistants de codage IA génèrent des vérifications len(), et les pipelines d'apprentissage automatique utilisent len() pour compléter et regrouper les séquences.

Python Fonction len()

Qu'est ce que le Python Fonction len() ?

Le len () la fonction est une fonction intégrée dans PythonVous pouvez utiliser la fonction `len()` pour obtenir la longueur d'une chaîne de caractères, d'un tableau, d'une liste, d'un tuple, d'un dictionnaire ou d'autres objets. Comme le nombre d'éléments est stocké dans l'objet et n'est pas recalculé à chaque fois, `len()` vous permet de vérifier rapidement sa taille et d'optimiser les performances de votre programme.

Syntaxe de la Python Fonction len()

Le Python La fonction len() utilise la syntaxe suivante :

len(value)

Paramètres

valeur: L'objet donné — tel qu'une chaîne de caractères, une liste, un tuple, un dictionnaire ou un ensemble — dont vous souhaitez mesurer la longueur.

Valeur de retour

La fonction `len()` renvoie un entier, c'est-à-dire le nombre de caractères dans une chaîne ou le nombre d'éléments dans un tableau, une liste ou une collection. La signification exacte de la valeur de retour dépend du type d'objet qui lui est passé :

  • Cordes: la fonction len() renvoie le nombre de caractères dans la chaîne, y compris la ponctuation, les espaces et tous les types de caractères spéciaux.
  • Vide: Une chaîne vide ou une collection vide renvoie 0, car elle ne contient aucun élément.
  • Collections: La fonction intégrée len() renvoie le nombre d'éléments stockés dans une collection.
  • Erreur-type: La valeur de la fonction len() dépend du type de l'objet qui lui est passé. Passer une valeur sans longueur, comme un entier, lève une exception TypeError.
  • Dictionnaire: Pour un dictionnaire, chaque paire clé-valeur est comptée comme une unité, donc len() renvoie le nombre de clés.

Exemples de Python Fonction len()

Les exemples suivants montrent comment utiliser la fonction len() pour trouver la longueur de différentes chaînes de caractères. Python objets, notamment une chaîne de caractères, une liste, un tuple, un dictionnaire et un tableau.

Exemple 1 : Comment trouver la longueur d’une chaîne de caractères

# testing len() 
str1 = "Welcome to  Guru99 Python Tutorials"
print("The length of the string  is :", len(str1))

Sortie :

The length of the string  is : 35

Exemple 2 : Comment trouver la longueur d’une liste

# to find the length of the list

list1 = ["Tim","Charlie","Tiffany","Robert"]

print("The length of the list is", len(list1))

Sortie :

The length of the list is 4

Exemple 3 : Comment trouver la longueur d’un tuple

# to find the length of the tuple

Tup = ('Jan','feb','march')

print("The length of the tuple is", len(Tup))

Sortie :

The length of the tuple is 3

Exemple 4 : Comment trouver la longueur d’un dictionnaire

# to find the length of the Dictionary

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}

print("The length of the Dictionary is", len(Dict))

Sortie :

The length of the Dictionary is 4

Exemple 5 : Comment trouver la longueur d’un tableau

# to find the length of the array

arr1 = ['Tim','Charlie','Tiffany','Robert']

print("The length of the Array is", len(arr1))

Sortie :

The length of the Array is 4

Comment trouver la longueur d'une chaîne de caractères sans utiliser la fonction len() ? Python

La fonction `len()` est la méthode la plus rapide et la plus lisible pour mesurer la longueur d'une chaîne de caractères, mais vous pouvez aussi compter les caractères manuellement. C'est un exercice courant lors des entretiens techniques, et chaque méthode consiste simplement à parcourir la chaîne en incrémentant un compteur.

L'approche la plus courante utilise une boucle for :

# length of a string without len()
mystr = "Guru99"
count = 0
for char in mystr:
    count += 1
print("The length is", count)

Sortie :

The length is 6

Une option plus courte utilise la fonction sum() avec une expression génératrice, en ajoutant 1 pour chaque caractère de la chaîne :

mystr = "Guru99"
length = sum(1 for char in mystr)
print("The length is", length)

Sortie :

The length is 6

D'autres méthodes pour compter les caractères sans utiliser la fonction len() incluent les suivantes :

  • Une boucle while qui découpe la chaîne jusqu'à ce qu'elle devienne vide, en incrémentant un compteur à chaque itération.
  • La fonction enumerate(), qui tracks l'index de chaque caractère au fur et à mesure de son itération.
  • Une fonction récursive qui renvoie 1 plus la longueur de la sous-chaîne restante.

Ces méthodes manuelles sont plus lentes que la fonction intégrée `len()`, il est donc conseillé de les réserver à l'apprentissage ou à la préparation aux entretiens d'embauche. Au quotidien, `len()` reste l'option la plus rapide et la plus claire.

Comment le Python La fonction len() fonctionne-t-elle en interne ?

Comprendre le fonctionnement de len() explique sa rapidité. Lorsque vous appelez len() sur un objet, Python ne parcourt pas chaque élément un par un. Au lieu de cela, il appelle la méthode spéciale __len__() de l'objet, ce qui signifie que l'expression len(x) est équivalente à x.__len__().

Les conteneurs intégrés tels que les chaînes de caractères, les listes, les tuples, les dictionnaires et les ensembles stockent leur propre taille en tant qu'attribut. Chaque fois que vous ajoutez ou supprimez un élément, Python Cette fonction met à jour le nombre d'éléments enregistrés. Lorsque la fonction len() est appelée, elle lit simplement cette valeur pré-enregistrée et la renvoie.

Comme la longueur est déjà connue, la fonction `len()` s'exécute en temps constant, soit O(1). Son temps d'exécution est identique, que l'objet contienne cinq éléments ou cinq millions. Vous pouvez également ajouter la prise en charge de `len()` à vos propres classes en définissant une méthode `__len__()` qui renvoie un entier.

class Team:
    def __len__(self):
        return 11

squad = Team()
print(len(squad))

Sortie :

11

C’est grâce à cette conception que la fonction len() se comporte de manière cohérente sur tous les types intégrés, ainsi que sur tout objet personnalisé qui implémente une méthode __len__().

" En savoir plus sur Python Méthodes de chaîne

FAQ

Oui. la fonction len() compte chaque caractère d'une chaîne, y compris les espaces, les tabulations, les chiffres et les signes de ponctuation. Par exemple, len("Guru 99!") renvoie 8, car l'espace et le point d'exclamation sont chacun comptés comme un seul caractère.

La fonction `len()` renvoie 0 pour une chaîne vide, car celle-ci ne contient aucun caractère. L'indexation de `len()` ne commence pas à zéro ; elle compte les éléments à partir de 1. Ainsi, `len("a")` renvoie 1 et `len("")` renvoie 0.

Les entiers ne stockent pas plusieurs éléments et n'ont donc pas de longueur. Appeler `len(123)` génère l'erreur « TypeError : l'objet de type 'int' n'a pas de `len()` ». Convertissez d'abord le nombre avec `len(str(123))` avant de compter ses chiffres.

Oui. Pour un dictionnaire, `len()` renvoie le nombre de paires clé-valeur, chaque paire étant comptée une seule fois. Pour un ensemble, `len()` renvoie le nombre d'éléments uniques, car un ensemble élimine automatiquement les doublons.

La fonction `len()` renvoie le nombre de points de code Unicode dans une chaîne. La plupart des lettres accentuées et des symboles comptent pour un seul point de code. Cependant, certains émojis et caractères combinés utilisent plusieurs points de code ; `len()` peut donc renvoyer plusieurs valeurs pour ces derniers.

Passez `len` comme clé à la fonction `max()` : `max(words, key=len)` renvoie la chaîne la plus longue de la liste. De même, `min(words, key=len)` renvoie la plus courte. Cela évite d'écrire une boucle manuelle pour comparer chaque longueur.

Les pipelines d'apprentissage automatique utilisent constamment la fonction `len()` : pour vérifier la taille des ensembles de données, confirmer la correspondance entre les caractéristiques et les étiquettes, et mesurer la longueur des séquences. Les modèles complètent ou tronquent souvent le texte pour qu'il ait la même longueur (`len()`), afin que les lots de données aient la même structure.

Oui. GitHub Copilot complète automatiquement les vérifications de longueur et les boucles de comptage à partir d'un court commentaire décrivant votre objectif. Les assistants IA d'Agentic vont plus loin : ils écrivent la logique de validation de longueur, ajoutent des clauses de protection contre les erreurs de type et exécutent vos tests à votre place.

Résumez cet article avec :