isdigit
Этот метод охватывает уже меньше вариантов, чем isnumeric()
:
unicode_numerics = ['⅕', '零', '²', '𐩀']
for num in unicode_numerics:
print(num.isdigit())
Снова обращаемся к документации: возвращает True
, если все символы в строке являются «цифрами» и при этом в ней есть как минимум 1 символ. В противном случае возвращает False
. «Цифры» включают в себя десятичные символы, а также «специальные цифры», которые требуют особой обработки, например, ²
или 𐩀
.
Пробуем привести эти символы к int
: