все Python 3stringпонятие
string.printable
спецсимволы
Строка всех печатаемых символов: digits + ascii_letters + punctuation + whitespace. Длина — 100 символов.
Синтаксис
string.printable # digits + letters + punctuation + whitespace
Название обманывает: в константу входят перевод строки, возврат каретки, табуляция и подача страницы, поэтому фильтр «оставить только printable» переносы строк не уберёт. Плюс она ASCII-only — кириллица в неё не попадает, тогда как метод str.isprintable() смотрит по Unicode и считает 'я' печатаемым, а перевод строки — нет.
Примеры
import string
print(len(string.printable)) # → 100
print(string.printable[:10]) # → 0123456789
non_printable = [c for c in 'hello\x00world' if c not in string.printable] # → ['\x00']
print('A' in string.printable) # → True
print('\x01' in string.printable) # → False
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности