我有这个清单:
list = (('',''),('1','products'),('3','test'),('2','person'))
当我使用时:
sorted(list)
它给了我
`list = (('',''),('1','products'),('2','person'),('3','test'))`
我想保留这个顺序,但只是将空白值放在最后,如下所示:
list = (('1','products'),('2','person'),('3','test'),('',''))
谢谢
使用
key
函数在元组的开头添加一个元素,指示原始元组是否有空的第一个元素。
my_list = (('',''),('1','products'),('3','test'),('2','person'))
sorted(my_list, key=lambda x: (x[0] == '', *x))
结果:
[('1', 'products'), ('2', 'person'), ('3', 'test'), ('', '')]