Использование метода isdigit()
На предыдущем этапе вы узнали основы строк, состоящих из цифр, и как использовать метод isdigit()
. На этом этапе мы более подробно рассмотрим метод isdigit()
и увидим, как его можно использовать с разными типами строк.
Метод isdigit()
- это строковый метод в Python, который возвращает True
, если все символы в строке являются цифрами, и False
в противном случае. Это простой, но мощный инструмент для валидации пользовательского ввода или обработки данных, которые должны содержать только числа.
Продолжим использовать файл digit_strings.py
в каталоге ~/project
. Мы изменим скрипт, чтобы протестировать метод isdigit()
с различными строками.
Сначала протестируем с пустой строкой:
## Create an empty string
empty_string = ""
## Use the isdigit() method to check if the string contains only digits
is_digit = empty_string.isdigit()
## Print the result
print(is_digit)
Замените содержимое файла digit_strings.py
приведенным выше кодом и сохраните его. Запустите скрипт еще раз:
python ~/project/digit_strings.py
Вы должны увидеть следующий вывод:
False
Пустая строка не содержит ни одной цифры, поэтому isdigit()
возвращает False
.
Далее протестируем с строкой, содержащей только пробелы:
## Create a string containing only spaces
space_string = " "
## Use the isdigit() method to check if the string contains only digits
is_digit = space_string.isdigit()
## Print the result
print(is_digit)
Замените содержимое файла digit_strings.py
приведенным выше кодом и сохраните его. Запустите скрипт еще раз:
python ~/project/digit_strings.py
Вы должны увидеть следующий вывод:
False
Строка, содержащая только пробелы, не считается строкой, состоящей из цифр, поэтому isdigit()
возвращает False
.
Наконец, протестируем с строкой, содержащей цифры Unicode:
## Create a string containing Unicode digits
unicode_digit_string = "一二三" ## These are Chinese numerals
## Use the isdigit() method to check if the string contains only digits
is_digit = unicode_digit_string.isdigit()
## Print the result
print(is_digit)
Замените содержимое файла digit_strings.py
приведенным выше кодом и сохраните его. Запустите скрипт еще раз:
python ~/project/digit_strings.py
Вы должны увидеть следующий вывод:
False
Метод isdigit()
возвращает True
только для ASCII - цифр (от 0 до 9), а не для других символов Unicode, представляющих числа.