擅长:python、mysql、java
<p>这个例子似乎对我有用:</p>
<pre><code>class P:
def __init__(self, x):
self.x = x
d = { 'how': P(3), 'hi': P(2), 'you': P(5), 'are': P(4) }
print list(d.iteritems())
print sorted(d.iteritems(), key=lambda x: x[1].x)
</code></pre>
<p>产生</p>
<pre><code>>> [('how', <__main__.P instance at 0x7f92028e52d8>), ('you', <__main__.P instance at 0x7f92028e5368>), ('hi', <__main__.P instance at 0x7f92028e5320>), ('are', <__main__.P instance at 0x7f92028e53b0>)]
>> [('hi', <__main__.P instance at 0x7fc210e6c320>), ('how', <__main__.P instance at 0x7fc210e6c2d8>), ('are', <__main__.P instance at 0x7fc210e6c3b0>), ('you', <__main__.P instance at 0x7fc210e6c368>)]
</code></pre>
<p>我猜问题不在排序本身;您尝试排序的结构可能有问题。你知道吗</p>