我的排序方法有問題。python3按attr排序對象列表相同的值
這是包含在列表我的對象: 地址類,隨着城市屬性
我的目錄looklike(簡體):
[Address('Paris'), Address('Denver'), Address('Paris'), Address('Test'), Address('Denver')]
在這個例子中,我有兩個重複的城市:巴黎和丹佛,
我想有這樣的結果:
[Address('Devenr'), Address('Denver'), Address('Paris'), Address('Paris'), Address('Test')]
按重複計數排序,如果數字相同,則按字母數字順序排序。
我想:
self.dictionnary.sort(key=lambda address: len([x for x in self.dictionnary if address.city == x.city]))
通過這個不工作...
誰能幫助我?
預先感謝您!
請問downvoter能解釋一下自己嗎?我只是檢查了這個代碼,它完美的工作。再加上它比每次需要新密鑰時計算整個列表更有效率。 –
我可以看出爲什麼有人可能會低估這一點:這是一個只有代碼的答案。一般來說,[包括解釋](http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)確實有助於提高您的帖子的質量。 – vaultah
@vaultah對我來說值得評論,而不是downvote。我爲自己確實不正確的事情預留了我的讚譽。 –