При изучении генераторов списков и словарей, Дима решал следующую задачу – на вход с клавиатуры подается строка из натуральных чисел, разделенных пробелами, и необходимо создать словарь, где в качестве ключа будет натуральное число, а в качестве значения – сумма цифр этого числа. Преисполнившись в познании генерации словарей, Дима поспорил со своим другом Андреем, что сможет сгенерировать такой словарь всего в одну строчку кода.
На вход программе c клавиатуры подается строка с натуральными числами, числа отделены друг от друга пробелами.
Программа выводит на экран словарь, где ключами являются числа из введенной строки, а значениями являются суммы цифр данных чисел.
python
def sum_digits(n):
return sum(map(int, str(n)))
numbers = input("Введите числа: ")
numbers_list = [int(x) for x in numbers.split()]
result_dict = {element: sum_digits(element) for element in numbers_list}
print(result_dict)
Он также определил вспомогательную функцию `sum_digits()`, которая принимает число `n`, преобразует его в строку с помощью функции `str()`, затем суммирует цифры числа, преобразуя их в целые числа с помощью функции `int()`. Функция `sum()` возвращает сумму всех цифр.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет