Python 2.7/3.1 przedstawił niesamowitą collections.Counter
.Sprawdzanie liczby elementów w Pythonie `Counter`
Moje pytanie: Jak policzyć liczbę "wyglądów elementów" licznika?
Chcę to:
len(list(counter.elements()))
ale krótsze.
Python 2.7/3.1 przedstawił niesamowitą collections.Counter
.Sprawdzanie liczby elementów w Pythonie `Counter`
Moje pytanie: Jak policzyć liczbę "wyglądów elementów" licznika?
Chcę to:
len(list(counter.elements()))
ale krótsze.
sum(counter.itervalues())
Nie ma podejścia O (1)? – corsiKa
Nie, nie ma. 'Counter' nie śledzi tych informacji. Przynajmniej sumowanie zliczeń jest znacznie wydajniejsze niż 'len (list (counter.elements()))'. –
Jest to (a) bardziej wydajne i (b) bardziej zwięzłe niż moja oryginalna metoda, ale wciąż jest brzydkie. Jeśli nie ma lepszego sposobu, sugeruję, że powinna istnieć metoda 'Counter.elements_count()'. –
że podniosła obiektu na Pythona idei i Raymond Hettinger powiedział 'Counter.elements_count()' sposób mogą być dodawane. Problem w języku Python: http://bugs.python.org/issue11733 –