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

Linda Hamilton
Libérer: 2024-11-03 23:47:30
original
689 Les gens l'ont consulté

How Can I Efficiently Count Item Occurrences in Python?

Comptage de fréquence d'éléments en Python avec une efficacité améliorée

Compter l'occurrence d'éléments dans une liste est une tâche de programmation courante. Cette question explore une approche plus efficace de ce problème en Python.

Le code initial présenté, bien que fonctionnel, implique de parcourir la liste deux fois, ce qui conduit à des performances sous-optimales. Le principal défi consiste à trouver un moyen pythonique de compter les occurrences d'éléments sans passages redondants dans la liste.

La solution réside dans l'utilisation de la classe Counter du module collections. Spécialement conçu pour le comptage de fréquence, Counter offre un moyen concis et efficace d'obtenir le résultat souhaité. Le code suivant démontre son utilisation :

<code class="python">from collections import Counter

words = "apple banana apple strawberry banana lemon"
Counter(words.split())</code>
Copier après la connexion

Cet extrait de code divise la chaîne d'entrée en mots individuels et transmet la liste résultante à Counter. Le résultat est un objet de type dictionnaire dans lequel les clés représentent des mots uniques et les valeurs représentent leurs nombres correspondants. Dans cet exemple, le résultat serait :

<code class="python">Counter({'apple': 2, 'banana': 2, 'strawberry': 1, 'lemon': 1})</code>
Copier après la connexion

La classe Counter utilise en interne une table de hachage pour stocker les données, fournissant des opérations de recherche et d'insertion en temps constant. Cette approche élimine le besoin d'une deuxième itération et améliore considérablement les performances du décompte de la fréquence des articles.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!