2024-09-24 00:26:51 发布
网友
我会说到点子上,我有这个:
ocurrencias = [('quiero', 1), ('aprender', 1), ('a', 1), ('programar', 1), ('en', 1), ('invierno', 2), ('hace', 1), ('frio', 1), ('este', 1)]
我想先按元组的第二个值排序,然后再按字符串值排序,然后打印每个元素以得到:
不知道我说得够清楚,但我的英语不是很熟练,所以请原谅我。在
提前谢谢
将sorted与生成每个元组的反向版本的键一起使用,若要按降序对第二个值进行排序,可以在前面添加一个-来对该值求反:
sorted
-
sorted(ocurrencias, key = lambda x: (-x[1], x[0])) # [('invierno', 2), ('a', 1), ('aprender', 1), ('en', 1), ('este', 1), ('frio', 1), ('hace', 1), ('programar', 1), ('quiero', 1)]
正如@Jonathon评论的那样,这种方法之所以起作用是因为列表和元组比较是按顺序进行的,即比较第一个元素;如果不等于第二个元素,请查看python中关于object comparison的更多信息。在
将
sorted
与生成每个元组的反向版本的键一起使用,若要按降序对第二个值进行排序,可以在前面添加一个-
来对该值求反:正如@Jonathon评论的那样,这种方法之所以起作用是因为列表和元组比较是按顺序进行的,即比较第一个元素;如果不等于第二个元素,请查看python中关于object comparison的更多信息。在
相关问题 更多 >
编程相关推荐