все Python 3stringпонятие
string.hexdigits
цифры
Строка '0123456789abcdefABCDEF'. string.octdigits — '01234567'. Применяются при парсинге шестнадцатеричных/восьмеричных чисел.
Синтаксис
string.hexdigits # '0123456789abcdefABCDEF'
string.octdigits # '01234567'
Для самого разбора числа константы не нужны: int(s, 16) и int(s, 8) конвертируют сами и бросают ValueError на мусоре — hexdigits/octdigits полезнее для предварительной проверки или для генерации случайного hex. В hexdigits намеренно оба регистра, так что приводить строку к нижнему перед проверкой незачем; зато int() с основанием 16 примет ещё и префикс '0x' и подчёркивания-разделители, которых в константе нет — валидация «все символы из hexdigits» такие строки отвергнет.
Примеры
import string
print(string.hexdigits) # → 0123456789abcdefABCDEF
print(string.octdigits) # → 01234567
is_hex = all(c in string.hexdigits for c in 'ff00AA') # → True
is_oct = all(c in string.octdigits for c in '0755') # → True
print(len(string.hexdigits)) # → 22
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности