Maison >développement back-end >Tutoriel Python >Comment puis-je compter efficacement les occurrences d'éléments de liste en Python ?

Comment puis-je compter efficacement les occurrences d'éléments de liste en Python ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-26 10:21:10478parcourir

How Can I Efficiently Count Occurrences of List Items in Python?

Comptage des occurrences d'un élément de liste en Python

En Python, vous pouvez facilement compter les occurrences d'un élément spécifique dans une liste à l'aide de l'outil méthode de comptage. Pour ce faire, fournissez l'élément que vous souhaitez compter comme argument à la méthode count de la liste.

Par exemple, si vous avez une liste [1, 2, 3, 4, 1, 4, 1 ], vous pouvez compter les occurrences du chiffre 1 en utilisant le code suivant :

[1, 2, 3, 4, 1, 4, 1].count(1)

Cette méthode renverra le nombre de fois que 1 apparaît dans la liste, qui dans ce cas est 3.

Attention : L'utilisation répétée de la méthode de comptage pour plusieurs éléments peut avoir un impact significatif sur les performances. En effet, chaque appel count nécessite une itération sur la liste entière contenant n éléments. Effectuer n comptes d'appels dans une boucle entraînerait n * n contrôles totaux, ce qui peut gravement nuire aux performances.

Alternative pour un comptage efficace de plusieurs éléments :

Si vous nécessitent de compter plusieurs éléments, vous devriez plutôt envisager d'utiliser la classe Counter. Cette classe offre des performances améliorées en effectuant seulement n vérifications au total. Cependant, il renvoie un objet Counter plutôt qu'un seul entier.

Pour illustrer, supposons que vous ayez la même liste [1, 2, 3, 4, 1, 4, 1] et que vous souhaitiez compter les occurrences de tous des éléments uniques. Vous pouvez utiliser le code suivant :

from collections import Counter

c = Counter([1, 2, 3, 4, 1, 4, 1])

print(c[1])  # Prints the count of 1
print(c[2])  # Prints the count of 2
print(c[3])  # Prints the count of 3
print(c[4])  # Prints the count of 4

Cette approche fournit efficacement le nombre d'éléments individuels dans la liste tout en évitant la surcharge de performances associée aux appels de comptage répétés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn