Функция Python translate() возвращает строку, в которой каждый символ был сопоставлен с заданной таблицей перевода.
Что такое функция string translate() в Python?
string translate() — это встроенная функция Python, которая возвращает строку, в которой любые указанные символы заменены символом, определенным в словаре или таблице сопоставления. Функция translate() принимает таблицу в качестве параметра и возвращает строку, в которой каждый символ сопоставляется с соответствующим символом в соответствии с таблицей перевода.
Есть два способа перевода строки в Python.
- Использование словаря.
- Используя метод maketrans() для создания таблицы сопоставления.
Чтобы создать таблицу сопоставления в Python, используйте метод maketrans(). Затем функция maketrans() используется для построения таблицы переходов.
Если символ не определен в словаре или таблице, он не будет заменен.
Синтаксис
|
1 |
string.translate(table) |
Параметры
Функция translate() принимает table в качестве обязательного параметра, либо словарь, либо таблицу отображения, описывающую, как выполнить замену.
Возвращаемое значение
Функция translate() возвращает строку, в которой каждый символ сопоставляется с соответствующим символом в соответствии с таблицей перевода.
Пример
|
1 2 3 |
dt = "Bilbo Baggins" transTable = dt.maketrans("B", "K") print(dt.translate(transTable)) |
Выход:
|
1 |
Kilbo Kaggins |
Здесь преобразование отображения перевода содержит отображение из B в K.
Перевод или отображение, используя таблицу перевода с translate()
|
1 2 3 4 5 6 7 8 9 10 11 12 |
# first string first_string = "xy" second_string = "zw" third_string = "ab" str = "xyzwab" print("Original string:", str) translation = str.maketrans(first_string, second_string, third_string) # translate string print("Translated string:", str.translate(translation)) |
Выход:
|
1 2 |
Original string: xyzwab Translated string: zwzw |
Перевод с помощью translate() с таблицей ручного перевода
|
1 2 3 4 5 6 7 8 |
# translation table - a dictionary trans_table = {65: None, 66: None, 67: 105} str = "ABCDEF" print("Original string:", str) # translate string print("Translated string:", str.translate(trans_table)) |
Выход:
|
1 2 |
Original string: ABCDEF Translated string: iDEF |
Здесь мы не создаем таблицу перевода из maketrans(), а вручную создаем перевод словаря сопоставления.
