Python 3.x版本 中关于列表sort()方法的一些疑问

1.关于sort()方法的两个关键字参数:key和cmp不是太理解什么意思
2.关于下面的代码:

>>> x=['abc','abcd','aaa']
>>> x.sort(key=len)
>>> x
['abc', 'aaa', 'abcd']
>>>
>>> x=['abc','abcd','aaa']
>>> x
['abc', 'abcd', 'aaa']
>>> x=['abc','abcd','aaa']
>>> x.sort(key=len,reverse=True)
>>> x
['abcd', 'abc', 'aaa']
第一个x返回的为什么不是['aaa','abc','abcd']?

就是当aaa和abc两个len相同时,排列的一句依据是什么?

第1个回答  2012-10-25
这个不是3.x独有的,是python都这样,你可以试下一下代码:

>>> x=['abc','abcd','aaa']
>>>x.sort(key=len)
>>>x
>>> x.sort()
>>> x
>>>x.sort(key=len)
>>>x

x.sort(key=len)是在已有的排序基础上进行字符长度升序,只可虑字长,字长相同是,按已有顺序排列
相似回答
大家正在搜