base64模块的使用

base64模块

base64模块 与hash一样,也是用来对数据进行加密的
base64是一种用64个字符来表示任意二进制数据的方法
特点: 1. 用来将非ASCII字符的数据转换成ASCII字符的一种方法
2. 常用于对URL的编码
3. 可以将不可打印的二进制数据转化为可打印的字符串
base64模块的API:

base64.b64encode(s)     对二进制数据进行base64编码
base64.b64decode(s)     对通过base64编码的数据进行解码
base64.urlsafe_b64encode(s)    对URL进行base64编码
base64.urlsafe_b6decode(s)      解码
```

### 示例代码如下: 
```python
import base64
# 1. 加密     # 要注意编码, 因为是存入的二进制数据
data = '你好世界'    # 一个中文占3个字节   # 12
res = base64.b64encode(data.encode())
print(res)  # b'5L2g5aW95LiW55WM'

# 字节数不是3的位数
data = 'hello world'  # 11
res = base64.b64encode(data.encode())
print(res)   # b'aGVsbG8gd29ybGQ='   # 一个等于=

data = 'pycharm hi'   # 10
res = base64.b64encode(data.encode())
print(res)     # b'cHljaGFybSBoaQ=='  # 两个==

# 2. 解密
data = '你好世界'
res = base64.b64encode(data.encode())
print(res)  # b'5L2g5aW95LiW55WM'
print(base64.b64decode(res)))  # 拿到一个二进制数据 b'xe4xbdxa0xe5xa5xbdxe4xb8x96xe7x95x8c'
print(base64.b64decode(res.decode()))  # 你好世界 # 解密成功


```
原文地址:https://www.cnblogs.com/nichengshishaonian/p/10961365.html