擅长:python、mysql、java
<p>Python将根据位置对元组进行排序,因此您可以将一个<code>key</code>传递给<code>sorted()</code>,将元素按您希望排序的顺序排列:</p>
<pre><code>boxes= [[ 27, 22, 84 , 54],
[261 ,127 ,294 ,163],
[224 , 21 ,279 , 54],
[ 45 ,83 , 96 ,111],
[ 10 ,126 , 66 ,163],
[189 ,185 ,219 ,222],
[154 , 21 ,192 , 59],
[278 , 25 ,318 , 58],
[146 ,188 ,186, 220]]
sorted(boxes, key=lambda x: (x[1], x[0], x[2], x[3]))
</code></pre>
<p>结果:</p>
<pre><code>[[154, 21, 192, 59],
[224, 21, 279, 54],
[27, 22, 84, 54],
[278, 25, 318, 58],
[45, 83, 96, 111],
[10, 126, 66, 163],
[261, 127, 294, 163],
[189, 185, 219, 222],
[146, 188, 186, 220]]
</code></pre>
<p>如果要就地对列表进行排序,请使用相同的键<code>boxes.sort()</code></p>