您可以使用标准heapq模块执行此操作:
>>> lst = ['hello', 'blah', 'boo', 'braininess']
>>> heapq.nlargest(2, lst, key=len)
['braininess', 'hello']
Run Code Online (Sandbox Code Playgroud)
最简单的方法是使用该sorted()函数,使用另一个内置函数len 作为key参数,如下所示;
>>> foo = ['dddd', 'ccc', 'bb', 'a', 'eeeee']
>>> sorted(foo, key=len)[-2]
'dddd'
Run Code Online (Sandbox Code Playgroud)
或者如果你需要两个最长的:
>>> sorted(foo, key=len)[-2:]
['dddd', 'eeeee']
Run Code Online (Sandbox Code Playgroud)