Python 3.1+Байтовые последовательностифункция
bytes.maketrans
bytes — замена и перевод
Статический метод: строит таблицу перевода из двух байтовых объектов (для translate).
Синтаксис
b.maketrans(...)
Обе последовательности должны быть одной длины, иначе ValueError; на выходе — таблица ровно из 256 байт, где неупомянутые байты отображаются сами в себя. Перевод идёт побайтово, а не посимвольно, поэтому на UTF-8-тексте такая таблица разрушит многобайтовые символы — для строк есть str.maketrans со словарём кодпоинтов. Удалять байты через таблицу нельзя: для этого у translate есть отдельный параметр delete.
Примеры
print(len(bytes.maketrans(b'ab', b'AB'))) # → 256
print(b'hello'.translate(bytes.maketrans(b'el', b'ip'))) # → b'hippo'
print(b'AATTGC'.translate(bytes.maketrans(b'ATGC', b'TACG'))) # → b'TTAACG'
print(bytes.maketrans(b'a', b'A')[97]) # → 65
print(bytes.maketrans(b'ab', b'A')) # → ValueError
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности