擅长:python、mysql、java
<blockquote>
<p>I have this [<code>dict</code>] and I have to sort it...</p>
</blockquote>
<p>不能对<code>dict</code>排序,因为标准字典是无序的。但是,您可以使用<a href="http://docs.python.org/dev/library/collections.html#collections.OrderedDict" rel="nofollow">^{<cd2>}</a>:</p>
<pre><code>In [2]: from collections import OrderedDict
In [3]: sd = OrderedDict(sorted(d.items(), key=lambda (k,v): (v['Gender'], v['Event'], v['PB'])))
In [4]: sd
Out[4]: OrderedDict([('Joan Pine', {'PB': 44.0, 'Gender': 'F', 'Age': 6, 'Event': 'FS', 'Name': 'Joan Pine'}), ('Kirsty Laing', {'PB': 58.2, 'Gender': 'F', 'Age': 6, 'Event': 'IM', 'Name': 'Kirsty Laing'}), ('Eric Idle', {'PB': 57.2, 'Gender': 'M', 'Age': 6, 'Event': 'IM', 'Name': 'Eric Idle'}), ('Ciaran Johnson', {'PB': 58.2, 'Gender': 'M', 'Age': 6, 'Event': 'IM', 'Name': 'Ciaran Johnson'})])
</code></pre>