Перейти до основного контенту

Як перевірити, чи введено число в Python: детальний посібник

4 хв читання
773 переглядів

Python-потужна і гнучка мова програмування, яка дозволяє працювати з різними типами даних. При розробці програм часто виникає необхідність перевірити, чи є введене користувачем значення числом. У цьому детальному посібнику ми розглянемо різні способи перевірки числових значень у Python.

Першим способом перевірки є використання функції isnumeric() для рядкового значення. Дана функція повертає True, якщо строкове значення складається тільки з цифр. Однак необхідно пам'ятати, що ця функція не зможе перевірити числові значення з десятковими знаками або негативними значеннями.

Другий спосіб перевірки заснований на використанні винятків. Ми можемо спробувати перетворити вхідне значення в число за допомогою функції float() або int(). Якщо значення може бути перетворено, то воно є числом, в іншому випадку генерується виняток ValueError, який можна обробити.

Третій спосіб перевірки полягає у використанні регулярних виразів. Модуль re надає потужні інструменти для роботи з регулярними виразами. Ми можемо визначити шаблон, який відповідає числу, і перевірити введене значення за допомогою функції re.match(). Якщо відповідність знайдено, значить введено число.

Вибір способу перевірки числових значень в Python залежить від конкретного завдання і вимог програми. Використовуючи описані в цьому посібнику методи, ви зможете без праці визначити, чи є введене значення числом і продовжити виконання вашої програми відповідним чином.

Як визначити число в Python?

1. Використання функції isdigit (). Ця функція перевіряє, чи складається введена рядок тільки з цифр. Якщо рядок складається тільки з цифр, то вона вважається числом. Приклад:

num = input("Введите число: ")if num.isdigit():print("Введено число")else:print("Введенное значение не является числом")

2. Використання функції isnumeric (). Ця функція працює аналогічно функції isdigit (), але також дозволяє вводити числа з десятковою крапкою. Приклад:

num = input("Введите число: ")if num.isnumeric():print("Введено число")else:print("Введенное значение не является числом")

3. Використання функції isdecimal (). Ця функція також перевіряє, чи введений рядок складається лише з цифр, але не допускає десяткової коми. Приклад:

num = input("Введите число: ")if num.isdecimal():print("Введено число")else:print("Введенное значение не является числом")

4. Використання конструкції try-except . В цьому випадку, ми намагаємося перетворити введене значення в число за допомогою функції float() або int() . Якщо перетворення пройшло успішно, то значення є числом. Якщо виникла помилка, то значить введене значення не є числом. Приклад:

num = input("Введите число: ")try:num = float(num)print("Введено число")except ValueError:print("Введенное значение не является числом")

Виберіть найбільш підходящий спосіб для вашого завдання та використовуйте його, щоб перевірити, чи введене значення є числом у Python.

Методи перевірки на число

Існує кілька методів, щоб перевірити, чи було введено число в Python. Ось деякі з них:

МетодОпис
isdigit()Перевіряє, що рядок складається тільки з цифр.
isnumeric()Перевіряє, що рядок містить лише Числові символи, такі як десяткові числа, дроби або числа в інших системах числення.
isdecimal()Перевіряє, що рядок містить лише десяткові числа (тобто лише цифри від 0 до 9).
try-exceptВикористовує конструкцію try-except для спроби перетворення рядка в число. Якщо перетворення не вдалося, значить, введено не число.

Кожен з цих методів має свої особливості і підходить для різних сценаріїв. Вибір конкретного методу залежить від вимог та обмежень вашої програми.

Як використовувати метод isnumeric для визначення числа

Ось приклад використання методу isnumeric () :

РядокРезультат
"123" True
"123a" False
"abc" False

Ви можете використовувати метод isnumeric() для перевірки введення користувача та виконання певних дій залежно від результату. Наприклад, ви можете попросити користувача ввести число, а потім перевірити, чи справді введений рядок є числом:

number = input("Введите число: ")if number.isnumeric():print("Вы ввели число.")else:print("Вы ввели не число.")

Таким чином, метод isnumeric() є корисним інструментом для перевірки, чи є введений рядок числом і для виконання відповідних дій у вашій програмі.