encode() method is used to convert a string into a bytes object using a specified encoding format. It is commonly used when storing data in files, sending data over a network, or working with systems that require byte data. By default, the method uses UTF-8 encoding.
Example: In this example, we encode a string using the default UTF-8 encoding.
s = "Hello, World!"
res = s.encode()
print(res)
Output
b'Hello, World!'
Explanation: encode() converts the string into a bytes object. Since no encoding is specified, it uses UTF-8 by default.
Syntax
string.encode(encoding="utf-8", errors="strict")
Parameters:
- encoding (optional): Specifies the encoding format. The default value is "utf-8". Common values include "ascii", "utf-16", and "latin-1".
- errors (optional): Specifies how encoding errors should be handled. The default value is "strict".
Examples
Example 1: This example explicitly uses UTF-8 encoding to convert a string into bytes. Since UTF-8 supports all Unicode characters, the conversion completes successfully.
s = "Python is fun!"
res = s.encode("utf-8")
print(res)
Output
b'Python is fun!'
Explanation: encode("utf-8") converts the string into a bytes object using UTF-8 encoding.
Example 2: ASCII supports only English characters. This example uses the errors="replace" option to replace unsupported characters during encoding.
s = "Pythön"
res = s.encode("ascii", errors="replace")
print(res)
Output
b'Pyth?n'
Explanation: character ö is not supported by ASCII, so errors="replace" replaces it with ?.
Example 3: This example uses the errors="xmlcharrefreplace" option to replace unsupported characters with their XML character references.
s = "Pythön"
res = s.encode("ascii", errors="xmlcharrefreplace")
print(res)
Output
b'Pythön'
Explanation: unsupported character ö is replaced with its XML character reference ö during encoding.