python内置模块:base64

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'

本文标题:python内置模块:base64
本文来源:http://ybzwz.com/article/pcised.html