Python String encode() Method



The python string encode() method encodes the string using the codec registered for its encoding. This function works based on the parameters specified which are encoding and the error.

There are various types of standard encodings such as base64, ascii, gbk, hz, iso2022_kr, utf_32, utf_16, and many more. Based on the encoding that is specified, the string is encoded. During this process, different error handling schemes can be set using the errors parameter. Finally, this method returns the encoded string.

In the following section, we will be learning more details about the python string encode() method.

Syntax

The syntax of the python string encode() method is as follows.

Str.encode(encoding='UTF-8',errors='strict')

Parameters

The following are the parameters of the python string encode() function.

  • encoding − This parameter specifies the encodings to be used. For a list of all encoding schemes, please visit: Standard Encodings.

  • errors − This parameter specifies an error handling scheme. The default for errors is 'strict' which means that the encoding errors raise a UnicodeError. Other possible values are 'ignore', 'replace', 'xmlcharrefreplace', 'backslashreplace' and any other name registered via codecs.register_error().

Return Value

The python string encode() method returns an encoded string.

Example

The python string encode() method that takes 'utf_16' as its encoding has a variable length encoding done. If the error is specified as 'strict', then the encoding errors raise a UnicodeError.

In the following example, a string "Hello! Welcome to Tutorialspoint." is created and it is encoded using the encode() function. The encoded string is printed as output using the print() function. In this case, the encoding used is the 'utf_16' and the error used is 'strict'.

str="Hello! Welcome to Tutorialspoint."
str_encoded= str.encode('utf_16','strict')
print("The encoded string is: ", str_encoded)

On executing the above program, the following output is generated -

The encoded string is:  b'\xff\xfeH\x00e\x00l\x00l\x00o\x00!\x00 \x00W\x00e\x00l\x00c\x00o\x00m\x00e\x00 \x00t\x00o\x00 \x00T\x00u\x00t\x00o\x00r\x00i\x00a\x00l\x00s\x00p\x00o\x00i\x00n\x00t\x00.\x00'

Example

The python string encode() method that takes 'euc_kr' as its encoding has a variable length encoding done on korean characters. If the error is specified as 'strict', then the encoding errors raise a UnicodeError.

In the following example, a string "Hello! Welcome to Tutorialspoint." is created and it is encoded using the encode() function. The encoded string is printed as output using the print() function. In both the cases, the encoding used is the 'euc_kr' and the error used is 'strict'.

str="Hello! Welcome to Tutorialspoint."
str_encoded= str.encode('euc_kr','strict')
print("The encoded string is: ", str_encoded)

The following is the output obtained by executing the above program -

The encoded string is:  b'Hello! Welcome to Tutorialspoint.'

Example

The python string encode() method that takes 'utf_32' as its encoding has a variable length encoding done. If the error is specified as 'replace', then it is replaced with a replacement marker. This is implemented in replace_errors().

In the following example, a string "Hello! Welcome to Tutorialspoint." is created and it is encoded using the encode() function. The encoded string is printed as output using the print() function. In both the cases, the encoding used is the 'utf_32' and the error used is 'replace'.

str="Hello! Welcome to Tutorialspoint."
str_encoded= str.encode('utf_32','replace')
print("The encoded string is: ", str_encoded)

The following output is obtained by executing the above program -

The encoded string is:  b'\xff\xfe\x00\x00H\x00\x00\x00e\x00\x00\x00l\x00\x00\x00l\x00\x00\x00o\x00\x00\x00!\x00\x00\x00 \x00\x00\x00W\x00\x00\x00e\x00\x00\x00l\x00\x00\x00c\x00\x00\x00o\x00\x00\x00m\x00\x00\x00e\x00\x00\x00 \x00\x00\x00t\x00\x00\x00o\x00\x00\x00 \x00\x00\x00T\x00\x00\x00u\x00\x00\x00t\x00\x00\x00o\x00\x00\x00r\x00\x00\x00i\x00\x00\x00a\x00\x00\x00l\x00\x00\x00s\x00\x00\x00p\x00\x00\x00o\x00\x00\x00i\x00\x00\x00n\x00\x00\x00t\x00\x00\x00.\x00\x00\x00'

Example

The python string encode() method that takes 'utf_32' as its encoding has a variable length encoding done. If the error is specified as 'backslashreplace', it implements the 'backslashreplace' error handling.

In the following example, a string "Hello! Welcome to Tutorialspoint." is created and it is encoded using the encode() function. The encoded string is printed as output using the print() function. In both the cases, the encoding used is the 'utf_16_be' and the error used is 'backslashreplace'.

str="Hello! Welcome to Tutorialspoint."
str_encoded= str.encode('utf_16_be','backslashreplace')
print("The encoded string is: ", str_encoded)

The above program, on executing, displays the following output -

The encoded string is:  b'\x00H\x00e\x00l\x00l\x00o\x00!\x00 \x00W\x00e\x00l\x00c\x00o\x00m\x00e\x00 \x00t\x00o\x00 \x00T\x00u\x00t\x00o\x00r\x00i\x00a\x00l\x00s\x00p\x00o\x00i\x00n\x00t\x00.'

Example

The python string encode() function without any parameters takes the default values of the encoding and executed accordingly.

In the following example, a string "Hello! Welcome to Tutorialspoint." is created and it is encoded using the encode() function with no parameters. The encoded string is printed as output using the print() function.

str="Hello! Welcome to Tutorialspoint."
str_encoded= str.encode()
print("The encoded string is: ", str_encoded)

The output of the above program is displayed as follows -

The encoded string is:  b'Hello! Welcome to Tutorialspoint.'
python_strings.htm
Advertisements