Python Base64 编码和解码教程

2023-03-28 00:00:00 编码 解码 教程

以下是 Python 中 Base64 编码和解码的详细教程:

Base64 编码
Base64 编码是将二进制数据转换为 ASCII 字符串的一种方式,常用于在邮件、HTTP 请求和其他应用程序中传输数据。在 Python 中,我们可以使用 base64 模块来进行编码。

编码字符串
下面是一个将字符串编码为 Base64 的范例:

import base64

# 编码字符串
message = "pidancode.com"
message_bytes = message.encode('utf-8')
base64_bytes = base64.b64encode(message_bytes)
base64_message = base64_bytes.decode('utf-8')

print(base64_message)

在这个例子中,我们首先将字符串 pidancode.com 转换为字节数组 message_bytes,然后使用 base64.b64encode() 函数将字节数组编码为 Base64 字节数组 base64_bytes。最后,我们使用 decode() 函数将 Base64 字节数组转换回字符串,并将其存储在 base64_message 变量中。输出结果为:

cGlkYW5jb2RlLmNvbQ==

编码二进制数据
如果要对二进制数据进行编码,可以直接将数据传递给 base64.b64encode() 函数。下面是一个将字节数组编码为 Base64 的例子:

import base64

# 编码二进制数据
data = b'\x01\x02\x03\x04\x05'
base64_bytes = base64.b64encode(data)
base64_data = base64_bytes.decode('utf-8')

print(base64_data)

在这个例子中,我们使用 b 前缀来指定字节数组,然后将其传递给 base64.b64encode() 函数进行编码。输出结果为:

AQIDBAU=

Base64 解码
解码 Base64 字符串可以使用 base64.b64decode() 函数。下面是一个将 Base64 字符串解码为原始字符串的例子:

import base64

# 解码字符串
base64_message = "cGlkYW5jb2RlLmNvbQ=="
base64_bytes = base64_message.encode('utf-8')
message_bytes = base64.b64decode(base64_bytes)
message = message_bytes.decode('utf-8')

print(message)

在这个例子中,我们首先将 Base64 字符串转换为字节数组 base64_bytes,然后使用 base64.b64decode() 函数将其解码为原始字节数组 message_bytes。最后,我们使用 decode() 函数将字节数组转换回字符串,并将其存储在 message 变量中。输出结果为:

pidancode.com

注意,解码 Base64 字符串时需要将字符串转换为字节数组,因为 base64.b64decode() 函数只接受字节数组作为输入。

这就是 Python 中 Base64 编码和解码的基本用法。

相关文章