我的Python字符串列表类似于x
,但足够长:
x = ['aaa','ab','aa','c','a','b','ba']
我希望将此列表按以下方式排序:['a', 'b', 'c', 'aa', 'ab', 'ba', 'aaa']
,我分两步进行如下操作:
>>> x.sort()
>>> x.sort(key=len)
>>> x
['a', 'b', 'c', 'aa', 'ab', 'ba', 'aaa']
但我需要一步完成:我也尝试使用 lambda
函数(参考):
>>> x.sort(key=lambda item: (item, len(item)))
>>> x
['a', 'aa', 'aaa', 'ab', 'b', 'ba', 'c']
但并非我所期望的:
有没有一步到位的方法?请帮忙。
我的Python:
~$ python --version
Python 2.6.6
python-2.7
标签编辑为python-2.6
,因为你明确表示正在使用 2.6 版本。 - Gareth Latty