如果它们在字符串中,我如何对列表中的整数进行排序?

时间:2015-05-31 15:56:58

标签: python sorting nested-lists

我有一个受控制的评估,需要能够以数字和字母顺序从测试中订购分数。如果他们与完成测验的人员名称相关,我该怎么做。所有名字都在1个列表中,例如[" John,9"],[" alfie,6"]等

任何帮助非常感谢!

1 个答案:

答案 0 :(得分:0)

如果要根据每个字符串的转换对字符串列表进行排序,可以将函数sortedkey关键字参数一起使用:

>>> l = ['10', '9', '100', '8']
>>> sorted(l)
['10', '100', '8', '9']
>>> sorted(l, key=int)
['8', '9', '10', '100']
>>> def transformation(x):
...     return -int(x)
...
>>> sorted(l, key=transformation)
['100', '10', '9', '8']

key函数的作用是不直接比较字符串,但函数返回的值是。