擅长:python、mysql、java
<p><code>sorted</code>接受三个参数:iterable、key和reverse,即<code>sorted(iterable, [key=None], [reverse=False])</code>。<code>key</code>参数允许您定义一个函数,可以调用该函数来比较iterable中项的值。以下是一些例子:</p>
<pre><code># notice the function name is supplied without brackets
sorted(["Eva", "eva", "string", "Aaron"], key=str.lower)
# the same result using lambda
sorted(["Eva", "eva", "string", "Aaron"], key=lambda x: x.lower())
# comparing by the second element in a tuple: (name, age)
name_ages = [("Eva", 12), ("Tom", 14), ("Gerald", 4)]
# output is [('Gerald', 4), ('Eva', 12), ('Tom', 14)]
sorted(name_ages, key=lambda x: x[1])
</code></pre>
<p>通过使用<code>lambdas</code>或定义自己的函数,排序函数非常通用。你知道吗</p>
<p><strong>NB:</strong>Use还可以使用<code>list.sort()</code>中的<code>key</code>参数</p>