Здесь мы обсудим, как получить первую цифру числа в python. Если наше число «12345», то нужно вывести в консоль его первую цифру – «1». Мы напишем код для получения первой цифры заданного числа, используя нативные методы Python, встроенные функции, оператор []
и оператор среза.
Скачивайте книги ТОЛЬКО на русском языке у нас в телеграм канале: PythonBooksRU
Получаем первую цифру заданного числа в цикле
Для начала мы создадим переменную, в которую будем сохранять введенное число. Затем, чтобы найти первую цифру числа, мы будем использовать цикл while
для целочисленного деления на 10 до тех пор, пока наше число будет больше либо равно 10. Далее мы просто выведем полученный результат на экран:
# Код на Python для получения первой цифры заданного числа # Ввод числа num = int(input('Enter any Number: ')) # Получаем первую цифру while (num >= 10): num = num // 10 # Выводим полученный результат в консоль print('The first digit of number:', num)
Результат:
Enter any Number: 123 The first digit of number: 1
Как получить первую цифру числа при помощи встроенных функций
Мы будем использовать встроенные функции math.pow()
и math.log10()
. Метод math.pow()
входит в библиотеку math
и используется для вычисления заданной степени числа (основания). Он принимает два числа и возвращает первое число, возведенное в степень, равную второму числу. Тип вывода – float
.
log10()
— это математическая функция, также входящая в модуль math
. Она принимает число в качестве аргумента и возвращает значение его десятичного логарифма (логарифма по основанию 10).
# Код на Python для получения первой цифры заданного числа # Импортируем модуль math import math # Ввод числа num = int(input('Enter any Number: ')) # Получаем первую цифру digits = int(math.log10(num)) first_digit = int(num / pow(10, digits)) # Выводим полученный результат в консоль print('The first digit of number:', first_digit)
Результат:
Enter any Number: 523 The first digit of number: 5
Как получить первую цифру числа при помощи оператора []
В Python для строкового типа данных существует оператор []
для доступа к любому символу в строке по номеру индекса. Таким образом, нам нужно передать в квадратные скобки номер индекса, и данный оператор вернет соответствующий символ. Так как индексация в строке начинается со значения 0, то для получения первого символа нужно передать в квадратные скобки именно 0.
# Код на Python для получения первой цифры заданного числа # Ввод числа num = int(input('Enter any Number: ')) # Преобразуем число в строку num_str = str(num) # Получаем первый символ строки first_digit = num_str[0] # Выводим полученный результат в консоль print('The first digit of number:', first_digit)
Результат:
Enter any Number: 7983516 The first digit of number: 7
Получение первой цифры числа при помощи срезов
Теперь давайте получим первую цифру числа при помощи оператора среза. Срез [:1]
как раз возвращает первый символ строки с индексом 0.
# Код на Python для получения первой цифры заданного числа # Ввод числа num = int(input('Enter any Number: ')) # Преобразуем число в строку num_str = str(num) # Получаем первый символ строки first_digit = num_str[:1] # Выводим полученный результат в консоль print('The first digit of number:', first_digit)
Результат:
Enter any Number: 100 The first digit of number: 1
Перевод статьи “How to Get the First Digit of a Number in Python”.