str.isnumeric()

Метод isnumeric() проверяет, состоит ли строка только из числовых символов. Это самый широкий из тестов на числа: помимо обычных цифр и индексов учитываются дроби (½), римские цифры (Ⅳ) и любые другие символы с Unicode-свойством «Numeric».

Сигнатура

str.isnumeric()

Параметры

Метод не принимает параметров.

Возвращаемое значение

True, если строка не пустая и все её символы являются числовыми по Unicode. Иначе — False. Знак -, точка и пробел дают False.

Примеры использования

Пример 1. Простые цифры.

print("12345".isnumeric())
print("3.14".isnumeric())
print("".isnumeric())
True
False
False

Пример 2. Дроби и римские цифры.

print("½".isnumeric())
print("Ⅳ".isnumeric())
print("¾".isnumeric())
True
True
True

Пример 3. Сравнение isdecimal / isdigit / isnumeric.

for s in ["7", "²", "½", "Ⅳ"]:
    print(s, s.isdecimal(), s.isdigit(), s.isnumeric())
7 True True True
² False True True
½ False False True
Ⅳ False False True

Пример 4. Отрицательное число.

print("-10".isnumeric())
False

Пример 5. Фильтрация только числовых токенов.

tokens = ["9600", "ESP32", "½", "D13", "Ⅴ"]
numeric = [t for t in tokens if t.isnumeric()]
print(numeric)
['9600', '½', 'Ⅴ']

См. также

Примечание

Лицензия и источники

Техническое описание метода адаптировано из официальной документации Python (https://docs.python.org), доступной под Python Software Foundation License Version 2. Перевод на русский, примеры использования и пояснения — © AlashEd Wiki.