2024-05-19 02:09:48 发布
网友
Possible Duplicate:Sorting a tuple that contains tuples
我在对包含数字和字符串的元组进行排序时遇到了一些问题。 一开始,我有一个这样的元组:
a=(("a",2),("b",2),("a",1))
那我该怎么分类呢:(先按数字,然后按字母顺序)
a=(("a",1),("a",2),("b",2))
非常感谢你的帮助!
元组不能按定义排序,因为它们是不可变的。您可以将其转换为列表,对列表进行排序,然后转换回元组。像这样的东西
mylist = sorted(a, key = lambda x: str(x[1])+str(x[0])) a = tuple(mylist)
内置函数sorted将为您实现这一点。
>>> a=(("a",2),("b",2),("a",1)) >>> from operator import itemgetter >>> sorted(a, key=itemgetter(1, 0)) [('a', 1), ('a', 2), ('b', 2)]
元组不能按定义排序,因为它们是不可变的。您可以将其转换为列表,对列表进行排序,然后转换回元组。像这样的东西
内置函数sorted将为您实现这一点。
相关问题 更多 >
编程相关推荐