Python实现将内容转为base64编码与解码

作者:牛奶咖啡13 时间:2021-11-25 14:44:24 

一、需求说明

需要使用Python实现将内容转为base64编码,解码,方便后续的数据操作。

二、base64简介

Base64是一种二进制到文本的编码方式【是一种基于 64 个可打印字符来表示二进制数据的表示方法(由于 2^6=64,所以每 6 个比特为一个单元,对应某个可打印字符。3 个字节有 24 个比特(3*8),对应于 4 个 Base64 单元,即 3 个字节可由 4 个可打印字符来表示)】;

简单的说Base64是一种将 byte数组编码为字符串的方法,而且编码出的字符串只包含ASCII基础字符(是网络传输 8Bit 字节代码的编码方式之一,是一种基于 64 个可打印字符来表示二进制数据的方法)

Base64使用到的64个字符
序号字符数目
1A-Z26个
2a-z26个
30-910个
4+1个
5/1个

注意:Base64不是加密算法,仅仅是一种编码方式,并且算法也是公开的,故不能依赖它进行加密。

深入浅出base64编码原理

三、base64编码解码

3.1、Python中base64编码解码

Python中base64编码解码的方法

import base64

#将内容转为base64格式内容
def convertToBase64(info):
   try:
       tmpBytes=info.encode()
       tmpBase64=base64.b64encode(tmpBytes)
       return tmpBase64
   except Exception as e:
       print('异常:',e)

#将base64格式内容转为正常信息
def convertTostring(base64Info):
   try:
       tmpBytes=base64.b64decode(base64Info)
       tmpStr=tmpBytes.decode()
       return tmpStr
   except Exception as e:
       print('异常:',e)

3.2、Python使用示例

#Python编码解码使用示例

#将正常信息转为base64格式内容
tmpStr='这是一个测试信息'
base64Info =base64OPC.convertToBase64(tmpStr)
print('\n',tmpStr,'转为base64内容:',base64Info)

#将base64格式内容转为正常信息
info=base64OPC.convertTostring(base64Info)
print('\n',base64Info,'转为正常信息是:',info)

tmpBase64='W215c3FsXQ0KZGVmYXVsdC1jaGFyYWN0ZXItc2V0PXV0ZjgN'
#tmpBase64='w215c3fsxq0kzgvmyxvsdc1jagfyywn0zxitc2v0pxv0zjgn'
tmp=base64OPC.convertTostring(tmpBase64)

print('\n',tmpBase64,'转为正常信息是:',tmp)

执行结果如下:

Python实现将内容转为base64编码与解码

来源:https://blog.csdn.net/xiaochenXIHUA/article/details/129204245

标签:Python,base64,编码,解码
0
投稿

猜你喜欢

  • ASP.NET MVC4入门教程(八):给数据模型添加校验器

    2024-06-05 09:27:38
  • 最新版 Windows10上安装Python 3.8.5的步骤详解

    2021-12-31 00:50:29
  • CSS网页布局编码小技巧整理

    2009-12-30 16:50:00
  • http协议详解(超详细)

    2023-01-20 23:27:31
  • Python socket.error: [Errno 98] Address already in use的原因和解决方法

    2021-07-12 01:27:02
  • python openvc 裁剪、剪切图片 提取图片的行和列

    2022-07-03 15:29:40
  • 解决Python报错:ValueError:operands could not be broadcast together with shapes

    2021-05-14 12:04:53
  • MySQL 去除重复数据实例详解

    2024-01-24 13:21:53
  • 编写SQL需要注意的细节Checklist总结

    2024-01-17 14:41:56
  • Python3 基础语法详解

    2023-06-24 06:10:55
  • oracle数据库添加或删除一列的sql语句

    2012-06-06 19:46:54
  • 页面编码的doctype声明

    2007-05-31 09:21:00
  • python中利用Future对象异步返回结果示例代码

    2021-09-10 06:59:52
  • opencv python图像梯度实例详解

    2021-05-17 23:26:30
  • 对PyQt5中树结构的实现方法详解

    2021-02-07 16:19:20
  • mysql常用备份命令和shell备份脚本分享

    2024-01-13 14:37:35
  • phpstudy无法启动MySQL服务的完美解决办法

    2024-05-22 10:08:59
  • ORACLE数据库查看执行计划的方法

    2012-06-06 20:15:52
  • 基于python实现数组格式参数加密计算

    2021-08-20 23:29:54
  • OpenCV图像颜色反转算法详解

    2022-04-25 16:19:31
  • asp之家 网络编程 m.aspxhome.com