为了账号安全,请及时绑定邮箱和手机立即绑定

python list排序问题?

python list排序问题?

ITMISS 2018-12-13 19:15:34
如果list元素全部为字符串,但是字符串可以转化为数组,如['1','2','11','22']在默认的.list.sort()函数执行后,排序的结果是['1','11','2','22']现在的问题是,我想按照数字大小进行排序,请问能够同过sort中的cmp或key参数实现吗。谢谢。因为讲字符串转化为数字再进行排序我已经实现,所以这种方法就不需要讲了 。谢谢能讲讲sort后面几个参数各有什么用吗?谢谢
查看完整描述

1 回答

?
开满天机

TA贡献1786条经验 获得超13个赞

可以用
list.sort(key = int)
key的最用相当于构建值,列表中的每个值实际上会转变为key(value),上例则为 int(value)
也就是 ['1','2','11','22'].sort(key = int)相当于[int('1'),int('2'),int('11'),int('22')].sort()
key可以理解为用于list comprehension的函数 ['1','2','11','22'].sort(key = int) 相当于
[int(x) for x in ['1','2','11','22'] ].sort()

查看完整回答
反对 回复 2019-01-05
  • 1 回答
  • 0 关注
  • 867 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号