Python常用模块 之 base64模块
Posted 孤寒者
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python常用模块 之 base64模块相关的知识,希望对你有一定的参考价值。
目录:
每篇前言:
🏆🏆作者介绍:【孤寒者】—CSDN全栈领域优质创作者、HDZ核心组成员、华为云享专家Python全栈领域博主、CSDN原力计划作者
- 🔥🔥本文已收录于Python全栈系列专栏:《Python全栈基础教程》
- 🔥🔥热门专栏推荐:《Django框架从入门到实战》、《爬虫从入门到精通系列教程》、《爬虫高级》、《前端系列教程》、《tornado一条龙+一个完整版项目》。
- 📝📝本专栏面向广大程序猿,为的是大家都做到Python从入门到精通,同时穿插有很多很多习题,巩固学习。
- 🎉🎉订阅专栏后可私聊进一千多人Python全栈交流群(手把手教学,问题解答); 进群可领取Python全栈教程视频 + 多得数不过来的计算机书籍:基础、Web、爬虫、数据分析、可视化、机器学习、深度学习、人工智能、算法、面试题等。
- 🚀🚀加入我一起学习进步,一个人可以走的很快,一群人才能走的更远!
1.base64模块:
1.1 base64(url编码):
-
正常的URL中是只能包含ASCII字符的,也就是字母,数字和一些符号,URL编码就是一种用来避免URL出现特殊字符(比如汉字)的编码方式。
-
base64是一种用64个字符来表示任意二进制数据的方法,(将二进制数据编码成ASCII字符)使用了A-Z,a-z,0-9,+,/这64个字符。
-
特点:
用来将非ASCII字符的数据转换成ASCII字符的一种方法;
常用于对URL的编码;
可以将不可打印的二进制数据转化为可打印的字符串。
1.2 base64模块API:
Base64编码后的数据可能会含有 + / 两个符号,如果编码后的数据用于URL或文件的系统路径中,就可能导致Bug,所以base模块提供了专门编码url(url网页中不能包含+/)的方法,下面第三个方法可以将+/转换为-和_。
-
对二进制数据进行base64编码:
base64.b64encode(s)
-
对通过base64编码的数据进行解码:
base64.b64decode(s)
-
对URL进行base64编码:
base64.urlsafe_b64encode(s)
-
对URL进行base64解码:
base64.urlsafe_b64decode(s)
1.3 简单使用:
①对字符串进行编码解码:
# -*- coding: utf-8 -*-
"""
__author__ = 孤寒者
"""
import base64
data = 'guhanzhe'.encode()
# 编码
data_encode = base64.b64encode(data) # 编码数据必须是bytes类型
print(data_encode)
# 解码
data_decode = base64.b64decode(data_encode)
print(data_decode)
②对URL进行编码解码:
# -*- coding: utf-8 -*-
"""
__author__ = 孤寒者
"""
import base64
url = 'http://www.baidu.com/'
# 编码
url_encode = base64.b64encode(url.encode()) # 编码数据必须是bytes类型
print(url_encode)
# 解码
url_decode = base64.b64decode(url_encode)
print(url_decode)
以上是关于Python常用模块 之 base64模块的主要内容,如果未能解决你的问题,请参考以下文章