Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Когда работаешь с данными в Python, часто приходится сталкиваться с ситуацией, когда необходимо проверить, является ли строка целым числом. Это может быть актуально, например, при обработке пользовательского ввода, когда требуется убедиться, что введенные данные соответствуют определенному формату.
Предположим, есть следующие строки:
s1 = '123' s2 = '-456' s3 = '7.89' s4 = 'abcdef'
Необходимо проверить, являются ли эти строки целыми числами. Очевидно, что только s1
и s2
являются целыми числами, в то время как s3
является десятичным числом, а s4
— вообще не числом.
Один из распространенных подходов к решению этой проблемы — использовать конструкцию try/except, однако, она может быть избыточной и не всегда желательной. К счастью, в Python существуют другие способы.
Один из таких способов — использование метода isdigit()
, который возвращает True
, если строка содержит только цифры. Однако, данный метод не справится с отрицательными числами и числами с плавающей точкой.
print(s1.isdigit()) # True print(s2.isdigit()) # False, потому что есть знак '-' print(s3.isdigit()) # False print(s4.isdigit()) # False
Другой способ — использовать регулярные выражения. В Python для этого есть модуль re
. Можно создать шаблон, который будет соответствовать только целым числам, и затем проверять, соответствует ли строка этому шаблону.
import re def is_int(s): return bool(re.match(r'^-?\d+$', s)) print(is_int(s1)) # True print(is_int(s2)) # True print(is_int(s3)) # False print(is_int(s4)) # False
Таким образом, задача проверки, является ли строка целым числом, может быть решена в Python без использования try/except.
На курсе Skypro «Python-разработчик» освоите основные инструменты программирования, получите опыт на реальных проектах и сможете стартовать в профессии уверенным новичком. Преподаватели — практикующие программисты с большим опытом, а в центре карьеры помогут составить цепляющее резюме и подготовиться к собеседованию.
Добавить комментарий