base64编码规则:
24bit的二进制数
|
分成4组,不足补\x00
|
每组编码成1个字节(用64个ASCII码中的字符表示),总共4个字节,不足补=
import base64
a = base64.b64encode(b'12Abc')
print (a)
print (str(a, 'utf-8'))
b = base64.b64decode(a)
print(b)
print (str(b, 'utf-8'))
运行结果:
b'MTJBYmM='
MTJBYmM=
b'12Abc'
12Abc
但,编码后可能存在'+'或'\'号, 在URL中不允许,所以需要通过url safe进行转换:+ --> - \ --> _
import base64
a = base64.b64encode(b'i\xb7\x1d\xfb\xef\xff')
print (a)
c = base64.urlsafe_b64encode(b'i\xb7\x1d\xfb\xef\xff')
print(c)
print(base64.urlsafe_b64decode(c))
运行结果:
b'abcd++//'
b'abcd--__'
b'i\xb7\x1d\xfb\xef\xff'
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。