【发布时间】:2016-12-05 06:15:31
【问题描述】:
我正在处理一个函数
def common_words(dictionary, N):
if len(dictionary) > N:
max(dictionary, key=dictionary.get)
函数说明为:
第一个参数是字数字典,第二个参数是 一个正整数 N。这个函数应该更新字典,所以 它包括最常见的(最高频率的词)。最多 N 单词应该包含在字典中。如果包括所有单词 有一些字数会导致字典超过 N 单词,则不应包含具有该字数的单词。 (即,对于第 N+1 个最常用词的平局,省略所有 领带中的单词。)
所以我知道我需要获得具有最高值的 N 个项目,但我不知道该怎么做。我也知道,一旦我得到 N 个项目,如果有任何重复的值,我需要将它们弹出。
例如,给定
k = {'a':5, 'b':4, 'c':4, 'd':1}
然后
common_words(k, 2)
应修改k,使其变为{'a':5}。
【问题讨论】:
-
请提供样本输入输出
-
>>> k= {'a':5,'b':4,'c':4,'d':1} >>> common_words(k,2) 应该返回 '一个'
-
你能用例子解释你的问题吗?我不明白你的问题背后的逻辑。
标签: python dictionary