簡體   English   中英

Python按降序排序Collections.DefaultDict

[英]Python Sort Collections.DefaultDict in Descending order

我有這段代碼:

    visits = defaultdict(int)
    for t in tweetsSQL:
         visits[t.user.from_user] += 1

我在網上看了一些使用排序方法的例子:

sorted(visits.iteritems, key=operator.itemgetter(1), reverse=True)

但是它給了我:

"TypeError: 'builtin_function_or_method' object is not iterable"

我不知道為什么。

iteritems是一種方法。 你需要括號來調用它: visits.iteritems()

就像現在一樣,你正在將iteritems方法本身傳遞給sorted ,這就是為什么它抱怨它不能迭代一個函數或方法。

我個人認為其中一種形式更簡潔,因為第一個參數只需要是迭代而不是迭代器。

sorted_keys = sorted(visits.keys(), reverse=True)
sorted_keys = visits.keys().sort(reverse=True)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM