我正在尝试编写一个函数,它接受一个参数numlist(由数字组成的非空列表),并返回出现频率最高的数字排序列表。
目前我已经创建了一个字典(数字作为键,它们的频率作为值)。但我仍然想找到其中具有最大值的数字并返回它。问题是我不知道如何比较它们。现在有一些类似这样的一行代码:
但是如果有多个符合要求的值怎么办?
目前我已经创建了一个字典(数字作为键,它们的频率作为值)。但我仍然想找到其中具有最大值的数字并返回它。问题是我不知道如何比较它们。现在有一些类似这样的一行代码:
max(stats, key=stats.get)
但是如果有多个符合要求的值怎么办?
mode([5, 1, 1, 5])
#I'm guessing this should return [1, 5] if sorted...
你会如何处理它?感谢您对此的任何帮助!
这是我的代码:
def mode(numlist):
mylist = numlist
dic = {}
for num in mylist:
if num in dic:
dic[num] += 1
else:
dic[num] = 1
# try to get the max value and return them in a set form like [1, 0]