python 内置模块:base64

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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'ixb7x1dxfbxefxff')
print (a)

c = base64.urlsafe_b64encode(b'ixb7x1dxfbxefxff')
print(c)
print(base64.urlsafe_b64decode(c))

运行结果:

b'abcd++//'

b'abcd--__'
b'ixb7x1dxfbxefxff'


以上是关于python 内置模块:base64的主要内容,如果未能解决你的问题,请参考以下文章

Python 操作Redis

python爬虫入门----- 阿里巴巴供应商爬虫

Python词典设置默认值小技巧

《python学习手册(第4版)》pdf

Django settings.py 的media路径设置

Python中的赋值,浅拷贝和深拷贝的区别