Python sorted函数|sorted([13,1,237,89,100],key=lambda x:len(str(x)))
Posted 向阳-Y.
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python sorted函数|sorted([13,1,237,89,100],key=lambda x:len(str(x)))相关的知识,希望对你有一定的参考价值。
记一笔sorted函数:
sorted([13,1,237,89,100],key=lambda x:len(str(x)),reverse=False)
key的值解析:
key的意思就是让你指定用什么方法进行排序:
是按照字符长度、首字母、数字还是啥的,拿上面代码的一部分进行举例
key=lambda x:len(str(x))
上面的lambda的意思和def一个函数很类似,只是换了一种写法,代码也可以改写成:
def function(x):
return len(str(x))
#将值通过形参x传入,并返回出它的长度(len)
所以,这里的key值就代表了按照传入字符的长度进行排序,而传入的字符就是列表里的每一个值了
所以下面这串代码的功能就很明显了,将列表里的每个值进行str转换,并求出长度,再用长度进行升序排序(默认就是升序False)
sorted([13,1,237,89,100],key=lambda x:len(str(x)),reverse=False)
所以最终的结果为:
[1,13,89,237,100]
#这里的237和100长度都为3,并且237原来的顺序就在100前面,所以原地不动
以上是关于Python sorted函数|sorted([13,1,237,89,100],key=lambda x:len(str(x)))的主要内容,如果未能解决你的问题,请参考以下文章