Python Glossary English

все 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Сообщить о неточности