Метод str.isdigit() в Python, строка состоит только из цифр
Метод str.isdigit() возвращает True , если все символы в строке str являются цифрами и есть хотя бы один символ (строка является не пустой и не состоит из пробелов), в противном случае False .
Цифры включают десятичные символы и цифры, которые требуют специальной обработки, такие как цифры надстрочного индекса совместимости. Это охватывает цифры, которые не могут быть использованы для формирования чисел в базе 10, как числа письменности Кхароштхи.
Формально, цифра-это символ, который имеет значение свойства Numeric_Type = Digit или Numeric_Type = Decimal .
Примеры определения, что строка состоит только из цифр.
>>> ''.isdigit() # False >>> ' '.isdigit() # False >>> '0123'.isdigit() # True >>> '12.3'.isdigit() # False >>> '12 300'.isdigit() # False >>> 'num'.isdigit() # False
- ОБЗОРНАЯ СТРАНИЦА РАЗДЕЛА
- Метод str.capitalize(), первая буква в строке заглавная
- Метод str.casefold(), сворачивает регистр строки
- Метод str.center(), выравнивает строку по центру
- Метод str.count(), считает совпадения в строке
- Метод str.encode(), преобразует строку в байты
- Метод str.endswith(), совпадение с концом строки
- Метод str.expandtabs(), меняет табуляцию на пробел
- Метод str.find(), индекс первого совпадения в строке
- Метод str.format(), форматирует строку
- Метод str.format_map()
- Метод str.index(), индекс первого совпадения подстроки
- Метод str.isalnum(), строка состоит из цифр и букв
- Метод str.isalpha(), строка состоит только из букв
- Метод str.isascii(), все символы в строке являются ASCII
- Метод str.isdecimal(), проверяет строку на десятичное число
- Метод str.isdigit(), строка состоит только из цифр
- Метод str.isidentifier() проверяет строку на идентификатор Python
- Метод str.islower( ), проверяет строку на нижний регистр
- Метод str.isnumeric(), проверяет строку на числовые символы
- Метод str.isprintable(), проверяет на доступность для печати
- Метод str.isspace(), является ли строка пробелом
- Метод str.istitle(), проверяет наличие заглавных букв в словах
- Метод str.isupper(), проверяет строку на верхний регистр
- Метод str.join(), объединяет список строк
- Метод str.ljust(), ровняет строку по левому краю
- Метод str.lower(), строку в нижний регистр
- Метод str.lstrip(), обрезает символы в начале строки
- Метод str.maketrans(), таблица символов для str.translate()
- Метод str.partition(), делит строку по первому совпадению
- Метод str.removeprefix(), удаляет префикс строки
- Метод str.removesuffix(), удаляет суффикс строки
- Метод str.replace(), меняет подстроку/символ в строке
- Метод str.rfind(), индекс последнего совпадения подстроки
- Метод str.rindex(), индекс последнего совпадения в строке
- Метод str.rjust(), ровняет строку по правому краю
- Метод str.rpartition(), делит строку по последнему совпадению
- Метод str.rsplit(), делит строку справа
- Метод str.rstrip(), обрезает символы на конце строки
- Метод str.split(), делит строку по подстроке
- Метод str.splitlines(), делит текст по символу ‘\n’
- Метод str.startswith(), совпадение с началом строки
- Метод str.strip(), обрежет строку с обоих концов
- Метод str.swapcase(), сменит регистр символов в строке
- Метод str.title(), каждое слово с заглавной буквы
- Метод str.translate(), транслирование строки
- Метод str.upper(), переведет строку в верхний регистр
- Метод str.zfill(), дополнит строку нулями
- Форматирование строк в стиле printf
- F-string. Форматированные строки
str.isdigit
Возвращает флаг, указывающий на то, содержит ли строка только цифры.
str. isdigit()
Вернёт True , если в строке хотя бы один символ и все символы строки являются цифрами, иначе — False .
''.isdigit() # False
' '.isdigit() # False
'!@#'.isdigit() # False
'abc'.isdigit() # False
'123'.isdigit() # True
'abc123'.isdigit() # False
Python 2
Для строк с 8-битами на символ (юникод) работа метода зависит от текущей локали.
Синонимы поиска: str.isdigit, str, isdigit, is_digit, is_number, isnumber, is_numeric, isnumeric, isdigits, isdigith
Что такое string.digits
Подскажите, пожалуйста, в чем вообще смысл string.digits, и где в коде его вообще можно использовать. Просто вообще не ясно его назначение. Условно indigits() проверяет то, состоит ли строка только из цифр, а вот то, что делает string.digits не ясно. Идеально было бы посмотреть еще на код с использованием string.digits. Заранее спасибо.
Отслеживать
задан 18 ноя 2020 в 2:15
341 5 5 серебряных знаков 15 15 бронзовых знаков
18 ноя 2020 в 2:50
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Это просто строка символов, представляющих цифры. string.digits[0] == ‘0’ , string.digits[1] == ‘1’ и так далее string.digits[9] == ‘9’
Перевод числа в строку
import string def int2str(num): if num == 0: return '0' res='' if num < 0: sign = -1 num = -num else: sign = 0 while num >0: digit, num = num % 10, num // 10 # Using string.digits res = string.digits[digit] + res if sign < 0: res = '-' + res return res
Генерация случайной цифровой последовательности
import string import random def random_numstr(len:int)->str: char_list = random.choices(string.digits, k=len) return "".join(char_list)
Строковая функция str.isdigit() в Python
Функция String isdigit() в Python возвращает True, если все символы в строке являются цифрами, в противном случае – False. Если строка пуста, функция возвращает False.
Цифры Unicode включают десятичные символы и цифры, требующие особой обработки, например цифры надстрочного индекса совместимости. Это касается цифр, которые нельзя использовать для образования чисел с основанием 10, таких как числа Харости. Цифра – это символ, имеющий значение свойства Numeric_Type = Digit или Numeric_Type = Decimal.
Давайте посмотрим на некоторые примеры функции str.isdigit().
s = '100' print(s.isdigit())
Вывод: True, потому что все символы в строке являются цифрами.
s = '0xF' print(s.isdigit())
Вывод: False, потому что символы строки не являются цифрами.
s = '10.55' print(s.isdigit())
Вывод: False, поскольку точка не является цифрой.
s = '' print(s.isdigit())
Выход: False, потому что строка пуста.
s = '1٠2?' # U+0660=0, U+1D7DC=4 print(s.isdigit()) print(int(s))
True 1024
Печать всех цифровых символов в Python
Мы можем использовать модуль Unicode, чтобы проверить, является ли символ цифрой или нет. Вот программа для печати всех цифр Unicode-символов.
import unicodedata count = 0 for codepoint in range(2 ** 16): ch = chr(codepoint) if ch.isdigit(): print(u': <> (<>)'.format(codepoint, ch, unicodedata.name(ch, 'UNNAMED'))) count = count + 1 print(f'Total Number of Digit Unicode Characters = ')
. ff16: 6 (FULLWIDTH DIGIT SIX) ff17: 7 (FULLWIDTH DIGIT SEVEN) ff18: 8 (FULLWIDTH DIGIT EIGHT) ff19: 9 (FULLWIDTH DIGIT NINE) Total Number of Digit Unicode Characters = 465