擅长:python、mysql、java
<p>为此,您需要编写一个比较器,它首先按count对值进行排序,如果值相等,则按键对值进行排序。在</p>
<pre><code>from collections import defaultdict
def count_words(s):
def comparator(first, second):
if first[1] > second[1]:
return 1
elif first[1] < second[1]:
return -1
if first[0] > second[0]:
return -1
elif first[0] == second[0]:
return 0
return 1
words = s.split(" ")
wordcount = defaultdict(int)
for word in words:
wordcount[word] += 1
return sorted(wordcount.items(), cmp=comparator, reverse=True)
print count_words("bitter butter a c batter butter baggy")
</code></pre>
<blockquote>
<p>[('butter', 2), ('a', 1), ('baggy', 1), ('batter', 1), ('bitter', 1), ('c', 1)]</p>
</blockquote>