Мой вопрос: у меня 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]
как вы сортируете целые числа по последней цифре?






Вы можете Сортировать, используя ключевая функция, который вычисляет n%10:
sorted(inp, key=lambda n: n%10)
или
sorted(inp, key=(10).__rmod__)
Последняя цифра числа - это остаток от деления на 10:
sorted(inp, key=lambda x: x % 10)
#[0, 1, 52, 3, 234, 65, 96, 87, 57]
Вы можете использовать встроенный sorted() с аргументом ключевого слова key:
sort = sorted(inp,
key=lambda x: str(x)[-1])
Он принимает значение, преобразует его в строку, чтобы получить от него индекс -1, затем это значение можно сравнивать и сортировать. Вам не нужно возвращать его в целое число.
Возможный дубликат Сортировка массива объектов по строковому значению свойства в JavaScript