怎么编程,急!求大佬解答

 

lst = [7,5,7,5,5,4,5]
dic = {}
for v in lst:
    dic[v] = dic.get(v,0)+1

for k,v in dic.items():
    if v>=(len(lst)+1)/2:
        print("众数是:",k,"出现次数:",v)

 

def grade_mode(list):
    '''
    计算众数

    参数:
        list:列表类型,待分析数据

    返回值:
        grade_mode: 列表类型,待分析数据的众数

    '''
    # TODO
    # 定义计算众数的函数
    # grade_mode返回为一个列表,可记录一个或者多个众数

    list_set = set(list)  # 取list的集合,去除重复元素
    frequency_dict = {}
    for i in list_set:  # 遍历每一个list的元素,得到该元素何其对应的个数.count(i)
        frequency_dict[i] = list.count(i)  # 创建dict; new_dict[key]=value
    grade_mode = []
    for key, value in frequency_dict.items():  # 遍历dict的key and value。key:value
        if value == max(frequency_dict.values()):
            grade_mode.append(key)
    return grade_mode


# 调用grade_mode函数,计算众数
grade_list = [100, 98, 87, 65, 82, 99, 92, 99, 100]
print(grade_mode(grade_list))

如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢

您的问题已经有小伙伴解答了,请点击【采纳】按钮,采纳帮您提供解决思路的答案,给回答的人一些鼓励哦~~

ps:开通问答VIP,享受5次/月 有问必答服务,了解详情↓↓↓

【电脑端】戳>>>  https://vip.csdn.net/askvip?utm_source=1146287632
【APP 】  戳>>>  https://mall.csdn.net/item/52471?utm_source=1146287632