Python按降序排序Collections.DefaultDict
我有一段代码:Python按降序排序Collections.DefaultDict,python,Python,我有一段代码: visits = defaultdict(int) for t in tweetsSQL: visits[t.user.from_user] += 1 我在网上查看了一些使用排序方法的示例,如下所示: sorted(visions.iteritems,key=operator.itemgetter(1),reverse=True) 但它给了我: “类型错误:内置函数或方法”对象不可编辑” 我不知道为什么。iteritems是一种方法。调用它需要
visits = defaultdict(int)
for t in tweetsSQL:
visits[t.user.from_user] += 1
我在网上查看了一些使用排序方法的示例,如下所示:
sorted(visions.iteritems,key=operator.itemgetter(1),reverse=True)
但它给了我:
“类型错误:内置函数或方法”对象不可编辑”
我不知道为什么。iteritems是一种方法。调用它需要括号:
visions.iteritems()
现在,您正在将iteritems方法本身传递给
sorted
,这就是为什么它抱怨不能迭代函数或方法的原因 就个人而言,我认为其中一种形式更简洁,因为第一个参数只需要是iterable而不是迭代器
sorted_keys = sorted(visits.keys(), reverse=True)
sorted_keys = visits.keys().sort(reverse=True)
他想按值排序,而不是按键排序