位置: 编程技术 - 正文

详解Python中使用base64模块来处理base64编码的方法(python怎么用的)

编辑:rootadmin

推荐整理分享详解Python中使用base64模块来处理base64编码的方法(python怎么用的),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python怎么用,python用于,在python中的用法,python用法,python中的用法,python怎么用的,python的用法,python用法,内容如对您有帮助,希望把文章链接给更多的朋友!

base模块是用来作base编码解码的。这种编码方式在电子邮件中是很常见的。它可以把不能作为文本显示的二进制数据编码为可显示的文本信息。编码后的文本大小会增大1/3。

闲话不说了,base模块真正用的上的方法只有8个,分别是encode, decode, encodestring, decodestring, bencode,bdecode, urlsafe_bdecode,urlsafe_bencode。他们8个可以两两分为4组,encode,decode一组,专门用来编码和 解码文件的,也可以对StringIO里的数据做编解码;encodestring,decodestring一组,专门用来编码和解码字符串; bencode和bdecode一组,用来编码和解码字符串,并且有一个替换符号字符的功能。这个功能是这样的:因为base编码后的字符除 了英文字母和数字外还有三个字符 + / =, 其中=只是为了补全编码后的字符数为4的整数,而+和/在一些情况下需要被替换的,bencode和bdecode正是提供了这样的功能。至于什 么情况下+和/需要被替换,最常见的就是对url进行base编码的时候。urlsafe_bencode和urlsafe_bdecode 一组,这个就是用来专门对url进行base编解码的,实际上也是调用的前一组函数。

基本用法首先准备一个个字符的数组[‘A','B','C', … , ‘1', ‘2', … , ‘+']然后对二进制数据进行处理, 每三个字节(byte)一组, 一共是3x8=, 划为4组,每组6bit.这样我们得到4个数字作为索引, 然后查表获得相应的4个字符, 就是编码后的字符串.如果编码的二进制数不是3的倍数怎么办,base在x在末尾不足后,在代码的末尾添加1~2个=号,解码是自动去掉

会把少的字符用=号补上

可以解码得到原有的字符串

详解Python中使用base64模块来处理base64编码的方法(python怎么用的)

urlsafe_bencode 和 urlsafe_bdecode

base的还提供用于url的编码方法urlsafe_bencode 和urlsafe_bdecode.

因为base编码后+和-可能会出现在字符中,所以通过urlsafe的方法把+转换为-,/转化为_.

由于=字符也可能出现在Base编码中,但=用在URL Cookie里面会造成歧义,很多Base编码后会把=去掉.去掉=后怎么解码呢?因为Base是把3个字节变为4个字节,所以Base编码的长度永远是4的倍数.因此需要加上=把Base字符串的长度变为4的倍数,就可以正常解码了.

综合示例

上面的encode函数和decode函数的参数其实还可以是文件对象的,那的象这样:

Python使用email模块对邮件进行编码和解码的实例教程 解码邮件python自带的email模块是个很有意思的东西,它可以对邮件编码解码,用来处理邮件非常好用。处理邮件是一个很细致的工作,尤其是解码邮件,

Python设置默认编码为utf8的方法 本文实例讲述了Python设置默认编码为utf8的方法。分享给大家供大家参考,具体如下:这是Python的编码问题,设置python的默认编码为utf8python安装目录:/et

Python内置数据结构与操作符的练习题集锦 第一题:giveyoutwovaraandb,printthevalueofa+b,justdoit!根据提议,给出两个变量a和b并打印出a+b的值.a,b=1,2printa+b当然也可以这么做a=1b=2printa+b第二题:给你一个list,如

标签: python怎么用的

本文链接地址:https://www.jiuchutong.com/biancheng/387015.html 转载请保留说明!

上一篇:Python画图学习入门教程(怎么用python画图具体步骤)

下一篇:Python使用email模块对邮件进行编码和解码的实例教程(python中email模块)

  • 收到汇算清缴退回企业所得税分录
  • 办房产证的完税证明是什么
  • 发放工资的转账支票出票人是谁
  • 关联交易纳税调整期限
  • 职工福利费允许结转以后年度扣除吗
  • 税屋网官网房屋
  • 微信怎么开公司账户
  • 物业公司是小规模纳税人税率是多少
  • 一次性收取全年培训费
  • 房地产开发企业资质等级有几个
  • 非现金资产债务怎么算
  • 资产收购应如何计算
  • 筹建期发生的费用
  • 用友u8怎样查询上个月凭证
  • 什么费用计入什么科目
  • 结余资金财政收回如何做账
  • 计入固定资产的土地
  • 企业的福利费如何使用
  • 哪些开普通发票
  • 非居民纳税人怎么纳税
  • 房屋销售佣金能退回吗
  • 每月收到融资租赁费利息发票
  • 记账凭证应交税费应交增值税怎么写
  • 公司账上的钱如何取出来
  • 服务费主营业务收入会计分录
  • 工业企业出售厂房需要预缴税款吗
  • 老板垫付款做会计分录
  • .net 安装
  • 苹果macmimi
  • 固定资产未开发票怎么入账
  • 通过email发送歌曲放哪?
  • 核定企业应税收怎么算
  • 货到付款怎么做账
  • 现金返利分录
  • 论文可查
  • Yii2中添加全局函数的方法分析
  • 上月的会计分录做错了
  • squid 启动命令
  • 进项税额销项税额
  • 实际成本法核算方法
  • 性能优化模式
  • 分页浏览是什么意思
  • 受托代销商品的手续费计入什么科目
  • 现金流量表存货增加额怎么算
  • 每月随工资发放的房补,本月至今未发
  • 职工教育经费包括住宿费吗
  • 小规模加工企业加工费会计分录
  • 个人所得税专项扣除2023最新政策
  • 教育行业税收优势分析
  • 内部审计主要目的
  • 以前年度损益调整账务处理分录
  • 公司因担保产生损失
  • 公共电话亭设计案例
  • 失业领取社保补贴怎么领
  • 公司注销实收资本要清零吗?
  • 开红字发票如何做分录?
  • 减值损失和减值损失区别
  • 企业可以不交残保金吗
  • 普通发票和增值发票的区别在哪里
  • 城建税教育费附加会计分录
  • 支付给职工以及为职工支付的现金增加
  • mysql8.0无法启动
  • Win10系统如何取消密码
  • linux命名命令
  • windows7开机
  • win10恢复以前系统
  • node.js cookie-parser 中间件介绍
  • dos打开usb端口
  • node创建服务
  • android自定义属性详解
  • php和mysql的结合是目前web开发中的黄金组合
  • linux 网卡 配置
  • 数据库多表连接的几种方式
  • 京东试用js脚本
  • android教学
  • jquery 跨域方法
  • 创建android项目
  • 自制基质
  • 北京户籍网官方网站
  • 浙江税务打不开,提示新版本
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设