2024-09-28 05:20:08 发布
网友
我在python中有一个按排序(降序)顺序排列的字符串集合。i、 e
({'word1':4, 'word2':3 ,'word3':3 'word4':2 'word5':1 ...})
我需要提取所有出现次数最高和次高的单词。 下面是我的代码片段:
actualKeyWords = heapq.nlargest(2, Counter(possibleKeyWords), key=lambda x:x[1]).
我是新来的请帮忙
您的代码无法工作,因为在Counter()对象上循环只返回键,而不是(keyword, count)值的元组。你知道吗
Counter()
(keyword, count)
这里不需要显式地使用heapq,当您调用^{} method时,Counter()对象将为您这样做:
heapq
actualKeywords = Counter(possibleKeywords).most_common(2)
这将提供一个包含两个(keyword, count)元组的列表。如果您想要仅关键字,请使用:
actualKeywords = [k for (k, c) in Counter(possibleKeywords).most_common(2)]
您的代码无法工作,因为在
Counter()
对象上循环只返回键,而不是(keyword, count)
值的元组。你知道吗这里不需要显式地使用} method 时,
heapq
,当您调用^{Counter()
对象将为您这样做:这将提供一个包含两个
(keyword, count)
元组的列表。如果您想要仅关键字,请使用:相关问题 更多 >
编程相关推荐