天天看点

base64的 b64encode和b64decode

文档字符串

Decode the Base64 encoded

bytes-like object

or

ASCII string s

.--------------解码(解的是base64加密的)

Encode

the bytes-like object s

using Base64 and return

a bytes object

.----------编码(用64个字符表示任意二进制数据)

两者得到的均是bytes 类型

测试

例子1

c=base64.b64decode('abc')  
# 因为不匹配bytes数据的要求而报错  Error: Incorrect padding
           

例子2

import pickle
d = dict(name='Bob', age=20, score=88)
pickle.dumps(d)  # 字典-->二进制数据
# result
# b'\x80\x03}q\x00(X\x05\x00\x00\x00scoreq\x01KXX\x03\x00\x00\x00ageq\x02K\x14X\x04\x00\x00\x00nameq\x03X\x03\x00\x00\x00Bobq\x04u.'

# 用base64编码
base64.b64encode(pickle.dumps(d))  ---------------2
# b'gAN9cQAoWAUAAABzY29yZXEBS1hYAwAAAGFnZXECSxRYBAAAAG5hbWVxA1gDAAAAQm9icQR1Lg

# 将上一条代码的二进制数据变成字符串
base64.b64encode(pickle.dumps(d)).decode()# --->二进制数据变成字符串-------1
# 'gAN9cQAoWAUAAABzY29yZXEBS1hYAwAAAGFnZXECSxRYBAAAAG5hbWVxA1gDAAAAQm9icQR1Lg=='
           

如何还原