2016-02-03 5 views
3

Я пытаюсь подсчитать количество вхождений элемента в итерабеле, используя most_common в модуле collections.Как игнорировать случай, когда вы делаете most_common в коллекциях Python.Counter?

>>> names = ['Ash', 'ash', 'Aish', 'aish', 'Juicy', 'juicy'] 
>>> Counter(names).most_common(3) 
[('Juicy', 1), ('juicy', 1), ('ash', 1)] 

Но что я ожидаю,

[('juicy', 2), ('ash', 2), ('aish', 2)] 

Есть ли «вещий» путь/трюк, чтобы включить «игнорирования случая» функциональности, так что мы можем получить желаемый результат.

ответ

4

Как насчет отображения его на str.lower?

>>> Counter(map(str.lower, names)).most_common(3) 
[('juicy', 2), ('aish', 2), ('ash', 2)]