Python : liste : voir si tous les éléments sont identiques

Encore une petite idée prise ici : Astuces Python en anglais

>>> lst = ['a', 'a', 'a']

>>> len(set(lst)) == 1
True

>>> all(x == lst[0] for x in lst)
True

>>> lst.count(lst[0]) == len(lst)
True

Dans l’ordre, du plus « Pythonique » au moins « Pythonique »… mais paradoxalement, du moins efficace au plus efficace.
Utiliser count() est le plus rapide.

2 comments

  1. Julien dit :

    En même temps python est pas réputé pour sa rapidité, est-ce que c’est réellement intéressant de se préoccuper de la performance ? Quelle est l’ordre de grandeur des différences d’efficacité ?

    • Olivier Pons dit :

      Euh… tu as la réponse dans la question : « Python est pas réputé pour sa rapidité » donc, « oui, c’est réellement intéressant de se préoccuper de la performance ».

Répondre à Julien Annuler la réponse.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.