擅长:python、mysql、java
<p>除了这里所有其他的好答案之外,您还可以编写自己的排序类:</p>
<pre><code>from functools import total_ordering
@total_ordering
class MyOrdering(object):
def __init__(self, value):
self.value = value
def __eq__(self, other):
return other.value == self.value
def __lt__(self, other):
for i in [0, 2, 4]:
if self.value[i] != other.value[i]:
return self.value[i] < other.value[i]
for i in [1, 3]:
if self.value[i] != other.value[i]:
return self.value[i] > other.value[i]
return False
</code></pre>
<p>然后可以使用MyOrdering类作为键函数进行排序:</p>
<pre><code>outer_list.sort(key=MyOrdering)
</code></pre>