编码解码Base64数据
# 问题
你需要使用Base64格式解码或编码二进制数据。
# 解决方案
base64 模块中有两个函数 b64encode() and b64decode() 可以帮你解决这个问题。例如;
>>> # Some byte data
>>> s = b'hello'
>>> import base64
>>> # Encode as Base64
>>> a = base64.b64encode(s)
>>> a
b'aGVsbG8='
>>> # Decode from Base64
>>> base64.b64decode(a)
b'hello'
>>>
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
# 讨论
Base64编码仅仅用于面向字节的数据比如字节字符串和字节数组。 此外,编码处理的输出结果总是一个字节字符串。 如果你想混合使用Base64编码的数据和Unicode文本,你必须添加一个额外的解码步骤。例如:
>>> a = base64.b64encode(s).decode('ascii')
>>> a
'aGVsbG8='
>>>
1
2
3
4
2
3
4
当解码Base64的时候,字节字符串和Unicode文本都可以作为参数。 但是,Unicode字符串只能包含ASCII字符。
编辑 (opens new window)
上次更新: 2023/10/13, 17:39:25