sort与sorted

Posted 去做点事情

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sort与sorted相关的知识,希望对你有一定的参考价值。

Python list内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列。

 

1.list.sort()方法仅被定义在list中,相反地sorted()方法对所有的可迭代序列都有效。

2.使用方式:  使用sort只能list.sort(),不能sort(list)

        使用sorted只能sorted(iteritems),不能iteritems.sorted

>>> sorted({\'d\': 1, \'a\': 3,\'b\': 2})                默认对key排序
[\'a\', \'b\', \'d\']
>>> sorted({1:\'q\',3:\'c\',2:\'g\'}.keys())       
[1, 2, 3]
>>> sorted({1:\'q\',3:\'c\',2:\'g\'}.values()) 
[\'c\', \'g\', \'q\']

3.sort要改变原来的list

 sorted返回一个新顺序的iteritems,但不会改变原来的iteritems

  

>>> a = [2,1,5]
>>> b = a.sort()    会发现这一步并没有对b进行赋值,在a排完序后在用b = a去赋值才成功
>>> print a
>>> [1,2,5]
>>> print b
>>> None
>>> b = a
>>> print b
>>> [1,2,5]



>>> a = [2,1,5]
>>> b = sorted(a)
>>> b
>>> [1,2,5]
>>> a 
>>> [1,2,5]

4.

>>> sorted([(2,1),(1,2),(3,4)])
[(1, 2), (2, 1), (3, 4)]                sorted默认对第一个进行排序

 

以上是关于sort与sorted的主要内容,如果未能解决你的问题,请参考以下文章

面试题编程题02-python sort和sorted用法与区别

c ++ std :: sort intel编译器错误:访问冲突

qsort与sort

java8 .stream().sorted().filter().map().collect()用法

代码片段 - Golang 实现集合操作

sort与sorted