How to specify 2 keys in python sorted(list)?

后端 未结 4 611
我在风中等你
我在风中等你 2021-01-17 10:50

How do I sort a list of strings by key=len first then by key=str? I\'ve tried the following but it\'s not giving me the desired sort:



        
4条回答
  •  孤街浪徒
    2021-01-17 11:54

    If you don't want to use lambda:

    from operator import itemgetter
    ls = ['foo','bar','foobar','barbar']
    print sorted([ [x,len(x)] for x in ls ] ,key=itemgetter(1,0))
    # print [s[0] for s in sorted([ [x,len(x)] for x in ls ] ,key=itemgetter(1,0))]
    

提交回复
热议问题