将一个list中的重复元素统计个数,吧出现次数最高的前top元素组成新list


自己写的一个python list工具

def sublist_by_top(original_list,top):
    """
            将一个list中的重复元素统计个数,吧出现次数最高的前top元素组成新list
    """
    original_dict = {}
    for item in set(original_list):
        original_dict[original_list.count(item)] = item
    
#     print original_dict
    original_set_onlytop = []
    key_list = original_dict.keys()
    key_list.sort(reverse=True)
    for key in key_list:
        original_set_onlytop.append(original_dict[key])
    
    result_top = []
    if original_set_onlytop.__len__() > top:
        for x in range(top):
            result_top.append(original_set_onlytop[x])
    else:
        result_top = original_set_onlytop
    return result_top


你可能感兴趣的:(将一个list中的重复元素统计个数,吧出现次数最高的前top元素组成新list)