Maison  >  Article  >  développement back-end  >  Comment compter la fréquence des éléments dans une liste Python ? (exemple de code)

Comment compter la fréquence des éléments dans une liste Python ? (exemple de code)

青灯夜游
青灯夜游original
2019-03-19 13:44:235705parcourir

Parfois, nous devons rechercher et compter le nombre (fréquence) d'éléments spécifiques dans la liste, alors comment compter ? L'article suivant vous montrera comment compter la fréquence des éléments de liste en Python. J'espère qu'il vous sera utile.

Comment compter la fréquence des éléments dans une liste Python ? (exemple de code)

Méthode 1 : Utiliser Counter() + set()+ Compréhension de liste

Nous pouvons utiliser la combinaison de Counter() + set() + List Comprehension pour compter la fréquence d’occurrence des éléments. La fonction Counter() effectue le regroupement et la fonction set() extrait différents éléments comme clés du dict et effectue une vérification de compréhension de liste sur la liste dans laquelle ils apparaissent.

Exemple :

# 列出元素的频率
from collections import Counter 
  
# 正在初始化列表
test_list = [[3, 5, 4], 
             [6, 2, 4], 
             [1, 3, 6]] 
  
# 输出原始列表
print("原始列表: " + str(test_list)) 
  
# 使用 Counter() + set() + list comprehension来列出元素的频率
res = dict(Counter(i for sub in test_list for i in set(sub))) 
  
# 输出结果
print("列表中元素的出现频率为:" + str(res))

Sortie :

Comment compter la fréquence des éléments dans une liste Python ? (exemple de code)

Méthode 2 : utilisez Counter() + itertools. chain.from_iterable() + map() + set()

La fonction set() extrait la clé du dictionnaire formée par Counter(), et la fonction map() effectue des tâches pour tous sous-listes, la fonction from_iterable() utilise un itérateur plus rapide que la compréhension de liste pour effectuer des tâches.

Exemple :

# 列出元素的频率
from collections import Counter 
from itertools import chain 
  
# 正在初始化列表
test_list = [[2, 3, 4], 
             [6, 2, 3], 
             [1, 4, 6]] 
  
# 输出原始列表
print("原始列表: " + str(test_list)) 
  
#使用 Counter() + itertools.chain.from_iterable() + map() + set() 列出元素的频率
res = dict(Counter(chain.from_iterable(map(set, test_list)))) 
  
#  输出结果
print("列表中元素的出现频率为:" + str(res))

Sortie :

Comment compter la fréquence des éléments dans une liste Python ? (exemple de code)

Recommandation de didacticiel vidéo connexe : "Tutoriel Python

Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun. Pour un contenu plus passionnant, vous pouvez prêter attention aux colonnes de didacticiels pertinentes du site Web PHP chinois ! ! !

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