Python String translate()

The string translate() method returns a string where each character is mapped to its corresponding character in the translation table.

The translate() method takes the translation table to replace/translate characters in the given string as per the mapping table.

The translation table is created by the static method maketrans().

The syntax of the translate() method is:

string.translate(table)

String translate() Parameters

The translate() method takes a single parameter:

  • table - a translation table containing the mapping between two characters; usually created by maketrans()

Return value from String translate()

The translate() method returns a string where each character is mapped to its corresponding character as per the translation table.


Example 1: Translation/Mapping using translation table with translate()

# first string
firstString = "abc"
secondString = "ghi"
thirdString = "ab"

string = "abcdef"
print("Original string:", string)

translation = string.maketrans(firstString, secondString, thirdString)

# translate string
print("Translated string:", string.translate(translation))

When you run the program, the output will be:

Original string: abcdef
Translated string: idef

Here, the translation mapping translation contains the mapping from a, b and c to g, h and i respectively.

But, the removal string thirdString resets the mapping to a and b to None.

So, when the string is translated using translate(), a and b are removed, and c is replaced i outputting idef.


Example 2: Translation/Mapping with translate() with manual translation table

# translation table - a dictionary
translation = {97: None, 98: None, 99: 105}

string = "abcdef"
print("Original string:", string)

# translate string
print("Translated string:", string.translate(translation))

When you run the program, the output will be:

Original string: abcdef
Translated string: idef

Here, we don't create a translation table from maketrans() but, we manually create the mapping dictionary translation.

This translation is then used to translate the string string to get the same output as the previous example.