A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://www.geeksforgeeks.org/python-strings-decode-method/ below:

Python Strings decode() method - GeeksforGeeks

Python Strings decode() method

Last Updated : 11 Jul, 2025

The decode() method in Python is used to convert encoded text back into its original string format. It works as the opposite of encode() method, which converts a string into a specific encoding format. For example, let's try to encode and decode a simple text message:

Python
s = "Geeks for Geeks"

e = s.encode('utf-8')
print("Encoded text:", e)
print(type(e))

d = e.decode('utf-8')
print(type(d))
print("Decoded text:", d)

Output
Encoded text: b'Geeks for Geeks'
<class 'bytes'>
<class 'str'>
Decoded text: Geeks for Geeks

Explanation:

Syntax

encoded_string.decode(encoding, errors)

Parameters:

1. encoding: The encoding format used for decoding (e.g., 'utf-8', 'ascii').

2. errors (Optional): Specifies how to handle errors during decoding:

Return Type: Returns the original string after decoding.

Working of the Python Decode() Method

The following flowchart shows the working of Python decoding:

Decode() Examples of decode() method: Example 1: Basic Encoding and Decoding

Encoding converts a string into bytes, and decode() brings it back to its original form.

Python
t = "Hello, Python!"

# Encoding the string into UTF-8
e_t = t.encode('utf-8')
print("Encoded:", e_t)

# Decoding back to original
d_t = e_t.decode('utf-8')
print("Decoded:", d_t)

Output
Encoded: b'Hello, Python!'
Decoded: Hello, Python!

Explanation:

Example 2: Handling Decoding Errors

Sometimes, decoding fails due to incompatible characters. Let's see how different error-handling modes work:

Python
# Encoding with ASCII (supports only basic English characters)
s = "Café"

# Encoding the text in ASCII
enc = s.encode('ascii', errors='replace')

# Decoding with strict mode (raises error)
try:
    print(enc.decode('ascii', errors='strict'))
except UnicodeDecodeError as e:
    print("Decoding Error:", e)

# Decoding with ignore mode (ignores errors)
print("Ignored Decoding:", enc.decode('ascii', errors='ignore'))

# Decoding with replace mode (replaces errors)
print("Replaced Decoding:", enc.decode('ascii', errors='replace'))

Output
Caf?
Ignored Decoding: Caf?
Replaced Decoding: Caf?

Explanation:

Example 3: Real-World Use Case (Password Encoding & Decoding)

Encoding and decoding help secure sensitive data like passwords. Here’s a simple demonstration.

Python
import base64

# User credentials
user = "user1"
passw = "secure@123"

# Encoding password
enc_pass = base64.b64encode(passw.encode('utf-8')).decode('utf-8')
print("Encoded Password:", enc_pass)

# Decoding password for verification
dec_pass = base64.b64decode(enc_pass).decode('utf-8')
print("Decoded Password:", dec_pass)

# Login verification
e_pass = "secure@123"
if e_pass == dec_pass:
    print("Login Successful!")
else:
    print("Wrong Password!")

Output
Encoded Password: c2VjdXJlQDEyMw==
Decoded Password: secure@123
Login Successful!

Explanation:

Common Use Cases:

How to use decode in Python 3?

In Python 3, the decode method is used to convert a bytes object into a str (string) object by decoding it from a specific encoding.

Example:

# Define a bytes object
bytes_obj = b'Hello, world!'

# Decode bytes object to string using UTF-8 encoding


string_obj = bytes_obj.decode('utf-8')

print(string_obj) # Output: Hello, world!

Here, decode('utf-8') converts the bytes object from UTF-8 encoding to a string.

What does .decode('utf-8') do?

The .decode('utf-8') method converts a bytes object into a str object using the UTF-8 encoding. UTF-8 is a variable-width character encoding used for text.

Example:

# Define a bytes object with UTF-8 encoding
bytes_obj = b'\xe2\x9c\x94'

# Decode bytes object to string


string_obj = bytes_obj.decode('utf-8')

print(string_obj) # Output: ✓

What is string decoding?

String decoding is the process of converting encoded bytes back into a string. It interprets bytes according to a specified character encoding to produce a readable string.

Example:

# Define a bytes object
bytes_obj = b'Hello'

# Decode bytes object to string


string_obj = bytes_obj.decode('utf-8')

print(string_obj) # Output: Hello

What is an example of decode?

Here’s a basic example of how to use the decode method with a bytes object:

Example:

# Define a bytes object
bytes_data = b'Hello, Python!'

# Decode bytes object to string using UTF-8 encoding


text = bytes_data.decode('utf-8')

print(text) # Output: Hello, Python!

What is encode() in Python?

The encode() method is used to convert a string into a bytes object using a specific encoding. This is the reverse of decode().

Example:

# Define a string
text = 'Hello, world!'

# Encode string to bytes using UTF-8 encoding


bytes_obj = text.encode('utf-8')

print(bytes_obj) # Output: b'Hello, world!'


Additional Example of encode():

# Define a string
text = 'Hello, Python!'

# Encode string to bytes


bytes_data = text.encode('utf-8')

print(bytes_data) # Output: b'Hello, Python!'



RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4