Подсчёт количества цифр в числе

Иногда нужно узнать, сколько цифр содержит целое число, например 3452. В этой статье разберём два подхода: классический — последовательное деление числа на 10 с подсчётом итераций, и компактный — через преобразование числа в строку и измерение её длины.

Что нужно знать

Перед изучением примера полезно понимать:

Пример 1. Цикл while

num = 3452
count = 0

while num != 0:
    num //= 10
    count += 1

print("Number of digits: " + str(count))

Вывод

Number of digits: 4

Цикл while выполняется до тех пор, пока условие num != 0 остаётся истинным.

  1. После первой итерации num делится нацело на 10 и становится равным 345, а счётчик count увеличивается до 1.

  2. На второй итерации num становится равным 34, count — 2.

  3. На третьей итерации num становится равным 3, count — 3.

  4. На четвёртой итерации num становится 0, count — 4.

  5. Условие цикла перестаёт выполняться, и работа прекращается.

Пример 2. Встроенные функции

num = 123456
print(len(str(num)))

Вывод

6

Здесь сначала число преобразуется в строку функцией str(), а затем длина этой строки определяется функцией len(). Получаем количество цифр одной строкой кода.