Python .encode()
The .encode() method takes a given string and returns an encoded version of that string. If no encoding specifications are given, UTF-8 is used by default.
Syntax
string.encode(encoding='encoding', errors='errors')
string(required): The string to encode.encoding(optional): The type of encoding to use. For example, some types of encoding are UTF-32, ASCII, Base64, and UTF-16. If none are specified, UTF-8 will be used.errors(optional): How to handle errors if the string cannot be encoded. There are six error responses:strict: AUnicodeDecodeErrorwill be raised on failure. If no error handling is specified, this is the default.ignore: Ignore characters that cannot be encoded.replace: Replace the characters that cannot be encoded with a question mark.xmlcharrefreplace: If there is a character that cannot be encoded, an XML character reference will be inserted in its place.backslashreplace: If there is a character that cannot be encoded, the\uNNNNcharacters will be inserted in its place.namereplace: If there is a character that cannot be encoded, the\N{...}characters will be inserted in its place.
Example
In the following example, the .encode() method is called twice. The first call does not specify the optional parameters, so the string is encoded in UTF-8 and will throw a UnicodeDecodeError if there is failure. The second call specifies that the string will be encoded using ascii and that errors will be handled using xmlcharrefreplace.
example_a = 'Lèarning Pythön!'example_b = 'Consistèntly!'default_example = example_a.encode()ascii_example = example_b.encode(encoding='ascii', errors='xmlcharrefreplace')print("Default example:", default_example)print("ASCII example:", ascii_example)
This will result in the following output:
Default example: b'L\xc3\xa8arning Pyth\xc3\xb6n!'ASCII example: b'Consistèntly!'
Codebyte Example
The following example is runnable and uses the .encode() method twice. The first call does not specify encoding or error handling, so UTF-8 and strict error handling is used. The second call specifies UTF-16 and ignore error handling is used.
Contribute to Docs
- Learn more about how to get involved.
- Edit this page on GitHub to fix an error or make an improvement.
- Submit feedback to let us know how we can improve Docs.
Learn Python on Codecademy
- Looking for an introduction to the theory behind programming? Master Python while learning data structures, algorithms, and more!
- Includes 6 Courses
- With Professional Certification
- Beginner Friendly.75 hours
- Learn the basics of Python 3.12, one of the most powerful, versatile, and in-demand programming languages today.
- With Certificate
- Beginner Friendly.24 hours