Free cookie consent management tool by TermsFeed The translate() method of bytearray class in Python | Pythontic.com

The translate() method of bytearray class in Python

Method signature:

translate(table, /, delete='b')

Parameters:

table - A transalation table that defines the mapping for values to 0-255 in a bytearray object. The transalation table is a bytearray.

delete - A set of byte values that define which bytes to be deleted from a bytearray object. 

Return value:

Returns a bytearray with the translated values. 

Overview:

  • Each element in a bytearray can assume a value from 0 to 255. The elements of a bytearray can be modified by referring to a translation table which holds the actual values for the bytearray after the translation.
  • A translation table has 256 entries. The value at 0th position is the value of all 0s in the actual bytearray after translation. Similarly, the 1st position holds the value which will be replaced for each value 1 in the bytearray.
  • The translate() method of bytearray class accepts a translation table with which all the elements of a bytearray are translated.
  • A translation table is an array of bytes that defines the mapping for the values present in a bytearray object.
  • The translate() method also accepts a listing of byte values that needs to be deleted from a bytearray.

Example:

# Example Python program that creates a translation table 
# and uses it for translating the contents of a bytearray
# Create bytes representing lower case alphabets 
# a to z
srcBuffer = bytearray(range(97, 123))
print("Translate from:")
print(srcBuffer)

# Create bytes representing lower case alphabets 
# A to Z
targetBuffer = bytearray(range(65, 91))
print("Translate to:")
print(targetBuffer)

# Create translation table - To replace the bytes 
# representing lowercase letters with uppercase letters
translationTable = bytearray.maketrans(srcBuffer, 
                                       targetBuffer)
print("The translation table:")
print(translationTable)

print("Length of the translation table:")
print(len(translationTable))

# Translate the contents of a bytearray using the translation
# table 
buffer2Translate = bytearray(b"Where do you want to go?#")
translated = buffer2Translate.translate(translationTable, b"#")
print("Original bytearray:")
print(buffer2Translate)

print("Translated bytearray:")
print(translated)

Output:

Translate from:
bytearray(b'abcdefghijklmnopqrstuvwxyz')

Translate to:
bytearray(b'ABCDEFGHIJKLMNOPQRSTUVWXYZ')
The translation table:
b'\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12

\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789

:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~\x7f\x80

\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f

\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0\xa1\xa2\xa3

\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7

\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb

\xcc\xcd\xce\xcf\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf

\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3

\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff'
Length of the translation table:
256
Original bytearray:
bytearray(b'Where do you want to go?#')
Translated bytearray:
bytearray(b'WHERE DO YOU WANT TO GO?')

 


Copyright 2025 © pythontic.com