def len(data) -> int
len
sur des données de divers types.
Voici quelques exemples d'utilisation de la fonction len
.
>>> # Comment calculer la taille d'une chaîne de caractères ? >>> len("Une chaîne de caractères") 24 >>> # Comment calculer la taille d'une liste ? >>> len(["une", "liste", "de", "string"]) 4 >>> # Comment calculer la taille d'un tuple ? >>> len(("un", "tuple", "de", "string")) 4 >>> # Comment calculer la taille d'un dictionnaire ? >>> len({"first": 10, "second": 20}) 2 >>> # Comment calculer la taille d'un set ? >>> len({10, 20, 30, 10, 20, 30, 40}) 4 >>>
Return the number of items in a container.
Paramètre | Description |
---|---|
data : object |
La donnée pour laquelle calculer sa taille. |
La valeur de retour est de type int.
Elle correspond au nombre d'éléments constituant la donnée passée en paramètre.
TypeError :Une exception de ce type sera déclenchée si la valeur passée en paramètre n'est pas un ensemble d'éléments. De manière plus précise, l'objet passé en paramètre doit exposer une méthode
__len__()
pour que la fonction puisse correctement évaluer son résultat.
On considère, bien entendu, qu'une chaîne de caractères est une collection de caractères.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#!/usr/bin/python3 try: with open("AFile.txt", "r") as inputFile: lines = inputFile.readlines() if len(lines) == 0: raise Exception("Le fichier doit contenir au moins une ligne de texte") for line in lines: line = line.strip() if len(line) == 0: raise Exception("Une ligne du fichier ne doit pas être vide") print("J'ai réussi à charger plein de données :-)") except: print("Le Fichier spécifié ne peut pas être lu") print("bye bye") |
Pour support le calcul de taille, une classe doit fournir une méthode __len__()
. Comme le nom de cette méthode commence par deux underscores
(caractère blanc souligné) et se termine par deux underscores, cela sous-entend que vous ne devez pas invoquer cette méthode en direct (obj.__len__()
).
Veuillez préférer l'utilisation de la fonction len
qui finira par invoquer la méthode __len__
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
#!/usr/bin/python3 from random import randint class MyCollection: def __init__(self): pass def __len__(self): # On calcule une taille aléatoire (c'est un exemple). return randint(0, 10) if __name__ == '__main__': obj = MyCollection() print(len(obj)) |
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :