我正在尝试创建一个从列表中返回项目类型和计数项目的函数。
我有:
def count_items(column_list):
item_types = []
count_items = []
item_types = set(column_list)
print(item_types)
count_items = ????
return item_types, count_items
item_types
的返回值为:
{'', 'Female', 'Male'}
如果我对count_items
使用len
函数,它将返回三个值的总和,就像{1500}
一样,但我需要单独使用它们,比如{150, 550, 800}
,我应该使用什么?
发布于 2018-07-22 10:20:22
您只能使用列表理解和set返回计数。
def count_items(column_list):
item_types = set(column_list)
return [column_list.count(item) for item in item_types]
column_list=['male','male','','','','female','male','female']
print(count_items(column_list))
输出:
[3, 2, 3]
或者两者兼而有之
def count_items(column_list):
item_types = set(column_list)
return [[item,column_list.count(item)] for item in item_types]
输出:
[['', 3], ['male', 3], ['female', 2]]
发布于 2018-07-22 10:04:52
您可以使用collections Counter
from collections import Counter
my_list_of_items = ['a', 'a', 'b']
counter = Counter(my_list_of_items)
---> {'a': 2, 'b': 1}
https://stackoverflow.com/questions/51461472
复制相似问题