网站建设资讯

NEWS

网站建设资讯

Python中base64模块如何使用

Python中base64模块如何使用,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

西安ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!

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

最简单的加解密实例

import base64  str1 = 'djhui' str2 = base64.b64encode(str1)  str3 = base64.b64decode(str2)

闲话不说了,Python base64模块真正用的上的方法只有8个,分别是encode, decode, encodestring, decodestring, b64encode,b64decode, urlsafe_b64decode,urlsafe_b64encode。他们8个可以两两分为4组,encode,decode一组,专门用来编码和 解码文件的,也可以对StringIO里的数据做编解码;encodestring,decodestring一组,专门用来编码和解码字符串; b64encode和b64decode一组,用来编码和解码字符串,并且有一个替换符号字符的功能。

这个功能是这样的:因为base64编码后的字符除 了英文字母和数字外还有三个字符 + / =, 其中=只是为了补全编码后的字符数为4的整数,而+和/在一些情况下需要被替换的,b64encode和b64decode正是提供了这样的功能。至于什 么情况下+和/需要被替换,最常见的就是对url进行base64编码的时候。urlsafe_b64encode和urlsafe_b64decode 一组,这个就是用来专门对url进行base64编解码的,实际上也是调用的前一组函数。

下面看看Python base64模块的例子:

#-*- encoding:gb2312 -*-  import base64  import StringIO  a = "this is a test" b = base64.encodestring(a) # 对字符串编码  print b  print base64.decodestring(b) # 对字符串解码  c = StringIO.StringIO()  c.write(a)  d = StringIO.StringIO()  e = StringIO.StringIO()  c.seek(0)  base64.encode(c, d) # 对StringIO内的数据进行编码  print d.getvalue()  d.seek(0)  base64.decode(d, e) # 对StringIO内的数据进行解码  print e.getvalue()  a = "this is a +test" b = base64.urlsafe_b64encode(a) # 进行url的字符串编码  print b  print base64.urlsafe_b64decode(b)

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

f1 = open('aaa.txt', 'r')  f2 = open('bbb.txt', 'w')  base64.encode(f1, f2)  f1.close()  f2.close()

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注创新互联行业资讯频道,感谢您对创新互联的支持。


网站标题:Python中base64模块如何使用
文章出自:http://cdweb.net/article/pjpdeg.html