您可以通过key
参数指定要用于比较项目的功能或项目。
key = lambda x : x[0]
或更好 :key = operator.itemgetter(0)
或者您也可以根据需要定义自己的函数并将其传递给key
.
>>> root = [[random.randint(0, children), "some value"] for child in range(children)]
>>> root
[[3, 'some value'], [8, 'some value'], [5, 'some value'], [4, 'some value'], [3, 'some value'], [3, 'some value'], [2, 'some value'], [5, 'some value'], [5, 'some value'], [4, 'some value']]
>>> root.sort(key = lambda x : x[0], reverse = True)
>>> root
[[8, 'some value'], [5, 'some value'], [5, 'some value'], [5, 'some value'], [4, 'some value'], [4, 'some value'], [3, 'some value'], [3, 'some value'], [3, 'some value'], [2, 'some value']]
或使用operator.itemgetter
:
>>> from operator import itemgetter
>>> root.sort(key = itemgetter(0), reverse = True)
>>> root
[[8, 'some value'], [5, 'some value'], [5, 'some value'], [5, 'some value'], [4, 'some value'], [4, 'some value'], [3, 'some value'], [3, 'some value'], [3, 'some value'], [2, 'some value']]