リストをカウンターに変換しました。値を返そうとすると問題が発生します。試してみcounter.values()
ましたが、アイテム数ではなく、元のリストが表示されます。助言がありますか?
a=[1,1,2,1,2,3,4,5,66,44,3]
c=Counter(a)
print(c.values())
出力: [1,1,2,1,2,3,4,5,66,44,3]
リストをカウンターに変換しました。値を返そうとすると問題が発生します。試してみcounter.values()
ましたが、アイテム数ではなく、元のリストが表示されます。助言がありますか?
a=[1,1,2,1,2,3,4,5,66,44,3]
c=Counter(a)
print(c.values())
出力: [1,1,2,1,2,3,4,5,66,44,3]
keys()
元のリストの項目を返します。values()
関連するカウントを返します。items()
キーと値 (キー数) のペアを返します。
>>> from collections import Counter
>>> a=[1,1,2,1,2,3,4,5,66,44,3]
>>> c=Counter(a)
>>>
>>> c.keys() # elements of the original list taken once
dict_keys([1, 66, 3, 4, 5, 44, 2])
>>>
>>> c.values() # occurrences of each element
dict_values([3, 1, 2, 1, 1, 1, 2])
>>>
>>> c.items() # list of tuples (element, occurrence)
dict_items([(1, 3), (66, 1), (3, 2), (4, 1), (5, 1), (44, 1), (2, 2)])
>>>
>>> c[66] # occurrences of element 66
1
c.values() はアイテム自体ではなくカウントを返す必要があるというOPに同意します。それが期待される動作だと思います。それ以外はバグの可能性が高いです。Python bugdb を確認するか、新しいバージョンの Python を試してください。