我的问题是我有inp=[1,52,234,65,87,57,96,0,3]
,输出应为output=[0,1,52,3,234,65,96,87,57]
。如果最后一位数字相同,则按输入时的顺序保留它们。
inp=[1,52,234,65,87,57,96,0,3]
output=[0,1,52,3,234,65,96,87,57]
如何对最后一位数字进行排序?
答案 0 :(得分:1)
数字的最后一位是除以10的余数:
sorted(inp, key=lambda x: x % 10)
#[0, 1, 52, 3, 234, 65, 96, 87, 57]
答案 1 :(得分:0)
您可以将sorted()
与关键字参数key
一起使用:
sort = sorted(inp,
key=lambda x: str(x)[-1])
这将获取值,将其转换为字符串以从中获取-1索引,然后可以对该值进行比较和排序。 您不需要将其强制转换为整数。