Python sorted 函数

说明

sorted 的作用是给数组排序,这里的排序不同于sort,这里是返回List的副本,而且对原有的List不做任何改变,sorted 的参数也有两个,与之前不同的是,它的第一个参数是List,第二个参数是排序函数,排序函数需要写出排序规则,返回1(需要互换位置)或者-1(不需要换位置)或者0(不需要换位置)。

假设现在需要对一个数组的数字进行排序,那么排序函数可以这么写:

1
2
3
4
5
6
def cmp_ignore_case(s1, s2):
if s1 < s2:
return 1
if s1 > s2:
return -1
return 0

这里是倒叙排列,就是说返回-1的时候,数组不会做改变,返回1的话,数组的元素就要互换位置,简单来说就是返回-1的是排序的方式,在这里就是大的在前面。

然后是输入sorted函数,来进行排序,代码如下:

1
print sorted([4, 6, 2, 5], cmp_ignore_case)

执行上面的代码,输出如下:

[6, 5, 4, 2]

完整代码(方便粘贴 -_-! ):

```
def cmp_ignore_case(s1, s2):
if s1 < s2:
return 1
if s1 > s2:
return -1
return 0

print sorted([4, 6, 2, 5], cmp_ignore_case)
2. e.py 是目I └── wsg`setbl g',$ #新加 a/Shanghi' #修改失去#原 4.修改x),$ #新加 ws里面的index方法
` -
``C.

最后

以动手实践为荣 , 以只看不练为耻;

以打印日志为荣 , 以单步跟踪为耻;

以空格缩进为荣 , 以制表缩进为耻;

以单元测试为荣 , 以人工测试为耻;

以模块复用为荣 , 以复制粘贴为耻;

以多态应用为荣 , 以分支判断为耻;

以Pythonic为荣 , 以冗余拖沓为耻;

以总结分享为荣 , 以跪求其解为耻;

引自啄木鸟社区