Сообщить об ошибке.

Метод str.maketrans() в Python, таблица символов для str.translate()

Создает таблицу преобразования символов для метода str.translate()

Синтаксис:

str.maketrans(x[, y[, z]])

Параметры:

Возвращаемое значение:

Описание:

Статический метод str.maketrans() создает и возвращает таблицу преобразования символов, используемую методом строки str.translate().

Если метод принимает только один аргумент x, то это должен быть словарь, отображающий

  • порядковые номера Unicode (целые числа) в порядковые номера Unicode
  • символы (строки длиной 1) в строки (произвольной длины) или None.

После этого символьные ключи будут преобразованы в порядковые.

Если есть два аргумента x и y, то они должны быть строками одинаковой длины, тогда в результирующем сопоставлении, каждый символ в x будет сопоставлен с символом в той же позиции в y. Если строки окажутся неодинаковой длины, то поднимается исключение ValueError: the first two maketrans arguments must have equal length.

Если существует третий аргумент z, это должна быть строка, символы которой не будут отображаться, т.е. будут удаляться.

Примеры создания таблицы преобразования символов для метода str.translate().

>>> x = {'а': '0', 'б': '1', 'в': '2', 'г': '3', 'д': '4', 
        'е': '5', 'и': '6', 'к': '7', 'л': '8', 'о': '9'}
>>> line = 'таблицу преобразования символов'
>>> tbl = line.maketrans(x)
>>> line.translate(tbl)
# 'т0186цу пр591р0з920н6я с6м29892'

>>> x = 'абвгдеикло'
>>> y = '0123456789'
>>> z = 'цуя'
>>> line = 'таблицу преобразования символов'
>>> tbl = line.maketrans(x, y, z)
>>> line.translate(tbl)
# 'т0186 пр591р0з920н6 с6м29892'