Трюк дня. Проверка элементов списка на равенство



"Питоничные" способы проверить, все ли элементы в списке равны между собой:



>>> 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



Решения расположены в порядке от наиболее до наименее "питоничных" и одновременно от наименее до наиболее эффективных.



Например, решение len(set()) - идиоматично, однако использование множества менее эффективно по части памяти и скорости работы.



#tips