1. 题目:
请写一个能处理去掉=的base64解码函数:
题目是廖雪峰老师的python教程中base64的练习。
2. 代码如下:
import base64
def safe_base64_decode(s):
# 判断是否是4的整数u,不够的在末尾添加等号
if len(s) % 4 != 0:
s = s + bytes('=', encoding='utf-8') * (4 - len(s) % 4)
# 解决字符串和bytes类型
if not isinstance(s, bytes):
s = bytes(s, encoding='utf-8')
# 解码
base64_str = base64.b64decode(s)
return base64_str
# 测试:
assert b'abcd' == safe_base64_decode(b'YWJjZA=='), safe_base64_decode('YWJjZA==')
assert b'abcd' == safe_base64_decode(b'YWJjZA'), safe_base64_decode('YWJjZA')
希望能够帮助到大家,有什么问题可以 直接评论即可,如果不够详细的话也可以说,我会及时回复的。