Как составить ключ для сортировки по сумме цифр?
Друзья, подскажите, нужно отсортировать числа в строке или листе, учитывая сумму цифр числа. Например строка 103, 90 будет отсортирована как 103, 90 тк 1+3+0 = 4, 9+0 = 9
Проблема с составлением ключа для функции sorted.
def valid_parentheses(string):
return sorted(string, key=[sum(map(int, str(x))) for x in string.split(' ')])
print(valid_parentheses('103 90'))
Ответы (1 шт):
Автор решения: n1tr0xs
→ Ссылка
Если исходные данные - числа в списке:
lst = [103, 50, 90, 60]
sorted_lst = sorted(lst, key=lambda x: sum(map(int, str(x))))
Если исходные данные - числа в строке, записанные через пробел:
nums = '103 50 90 60'
sorted_lst = sorted(map(int, nums.split()), key=lambda x: sum(map(int, str(x))))