博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python模块之base64
阅读量:6965 次
发布时间:2019-06-27

本文共 1537 字,大约阅读时间需要 5 分钟。

base64模块提供了在二进制数据和可打印ASCII字符间编解码的功能,包括中定义的Base16, Base32, Base64, Ascii85, Base85等编码。

RFC3548中定义的编码适用于将二进制数据编码后,在邮件、URL、HTTP POST请求中安全地传递数据。编码算法不同于uuencode program??

python3.4及之后的版本支持两种接口:

  • 将类字节对象编码为由ASCII可打印字符表示的bytes
  • 将类字节对象或纯ASCII字符组成的Unicode字符串解码为bytes

base64.b64encode(s, altchars=None)

对类字节对象s进行Base64编码,返回编码后的字节序列。

可选参数altchars必须是2个长度的类字节对象,分别替换编码结果中的'+'和'/'字符。可应用于生成安全的URL或文件系统Base64编码场景中。

base64.b64decode(s, altchars=None, validate=False)

对使用Base64编码生成的类字节对象或纯ASCII字符组成的Unicode字符串s进行Base64解码,返回解码后的字节序列。

可选参数altchars必须是2个长度的类字节对象或纯ASCII字符组成的Unicode字符串,分别将s中对应的字符替换为'+'和'/'。

如果s未能正确填充(s的长度必须是4的整数倍数),抛出binascii.Error.

如果validate的值是False,s中的非法字符(既不是标准base-64码表中的字符,又不是某些允许的可选字符)将在填充检查前丢弃。如果validate的值是True,s存在非法字符将抛出binascii.Error.

base64.standard_b64encode(s)

对类字节对象s进行标准Base64编码,返回编码后的字节序列。等同于b64encode(s)

base64.standard_b64decode(s)

对类字节对象或纯ASCII字符组成的Unicode字符串s进行标准Base64解码,返回解码后的字节序列。等同于b64decode(s)

base64.urlsafe_b64encode(s)

对类字节对象s进行安全的URL及文件系统Base64编码,替换标准Base64编码中的'+'为'-', '/'为'_',返回编码后的字节序列

base64.urlsafe_b64decode(s)

对类字节对象或纯ASCII字符组成的Unicode字符串s进行URL及文件系统Base64解码,返回解码后的字节序列


base64.b32encode(s)base64.b32decode(s, casefold=False, map01=None)base64.b16encode(s)base64.b16decode(s, casefold=False)base64.a85encode(b, *, foldspaces=False, wrapcol=0, pad=False, adobe=False)base64.a85decode(b, *, foldspaces=False, adobe=False, ignorechars=b' \t\n\r\v')base64.b85encode(b, pad=False)base64.b85decode(b)

基于RFC2045的旧接口

  • base64.decode(input, output)
  • base64.decodebytes(s)
  • base64.encode(input, output)
  • base64.encodebytes(s)

转载地址:http://kvbsl.baihongyu.com/

你可能感兴趣的文章
我的友情链接
查看>>
使用sqlplus工具导出数据到csv文件,要求文件带有时间戳
查看>>
浅谈JDBC与ODBC的区别与应用
查看>>
Jsoup下载图片报错:UnsupportedMimeTypeException
查看>>
TinyKing的博客园
查看>>
概率论快速学习03:概率公理补充
查看>>
【不同的Java垃圾回收器的比较】
查看>>
mongodb内存限制初探
查看>>
虚拟化定义
查看>>
曾经心痛
查看>>
PLATFORM软件有限公司
查看>>
我的友情链接
查看>>
Linux特性初识
查看>>
两个CSS样式生成网站
查看>>
PostgreSQL从继承到分区(三)
查看>>
linux 下清空tomcat catalina.out内容,释放磁盘空间
查看>>
CSS知识点——可替换元素vs不可替换元素
查看>>
记忆碎片 - 2015.09.11
查看>>
关于Windows系统virtualenv环境安装MySQL-Python的解决方案
查看>>
validator的Symbol Coverage没有100%
查看>>