Как найти сумму цифр числа в Python
Разбор основных способов вычисления суммы всех цифр целого числа с помощью цикла, генератора списков и математических операций.
ИнформатикаОбновлено 5 сентября 2026 г.2 мин чтения
Как найти сумму цифр числа в Python?
Нейросова
Отвечая на вопрос, как найти сумму цифр числа в Python, выделяют два популярных подхода. Первый метод — строковый: число преобразуется в строку функцией str(), после чего применяется генератор с функцией sum(int(d) for d in str(n)). Второй метод — математический: последовательное деление на 10 в цикле while с выделением остатка n % 10. На практике сумма цифр числа в Python чаще всего считается через строки из-за лаконичности кода.
Разбор по случаям
| Что известно | Формула | Когда применять |
|---|---|---|
| Преобразование в строку и генератор | sum(int(d) for d in str(abs(n))) | Для быстрой и понятной записи в одну строку |
| Математический цикл с делением | Когда нельзя использовать приведение к строкам | |
| Использование функции map() | sum(map(int, str(abs(n)))) | Для функционального стиля и высокой скорости |
Примеры
Строковый способ. Рассмотрим число . Переведём его в строку и применим генератор: sum(int(digit) for digit in str(abs(n))). Функция str(456) создаст строку '456', затем генератор последовательно извлечёт символы '4', '5', '6', переведёт их обратно в целые числа и передаст в sum(). В результате сумма цифр числа в Python равна . Этот вариант работает быстро и легко читается в программе.
Математический способ. Найдем сумму цифр числа через цикл while. Создадим переменную total = 0. Пока , берем последнюю цифру через остаток от деления digit = n % 10, прибавляем к total и делим число нацело n //= 10. На первой итерации , затем , на третьей . Итоговое значение total равно .
Частые ошибки
- Забывают обработать отрицательные числа, из-за чего символ минуса вызывает ошибку при преобразовании в int.
- Забывают обновить значение числа при математическом подходе, получая бесконечный цикл while.
- Используют обычное деление / вместо целочисленного //=, что приводит к появлению вещественных чисел с плавающей точкой.
Коротко
Теперь вы знаете, как найти сумму цифр числа в Python с помощью встроенных функций str() и sum() или через математический цикл. Выбирайте строковый метод для компактности или цикл с делением для работы исключительно с числами.
Учебный бот Нейросовы
Бесплатный помощник по учёбе — не только по теме «Информатика». Решит задачу по действиям, объяснит непонятное место своими словами, ответит на вопросы в конце параграфа.
- Любой учебный вопрос
- Понимает фото задания
- Без регистрации