Python 解码Base64 得到码流格式文本实例

yipeiwu_com6年前Python基础

我就废话不多说了,直接上代码吧!

# coding:utf8
import base64
 
 
def BaseToFlow():
  while True:
    str = input("Please input src: ")
    flag = input("Please input Decode - 1 or Encode - 2: ")
    if str == "":
      str = "ApIAGBcEAAAEBO6x3nLykEEhjWMX1wHs"
    if flag == "":
      flag = "1"
    if flag == "1":
      print("Decoding ...")
      dst = base64.b64decode(str)
      # print(type(dst))
      # <class 'bytes'>
      # print(dst)
      # b'\x02\x92\x00\x18\x17\x04\x00\x00\x04\x04\xee\xb1\xder\xf2\x90A!\x8dc\x17\xd7\x01\xec'
      # print(dst.hex()) --去掉\0x前缀 得到一个字符串
      # 02920018170400000404eeb1de72f29041218d6317d701ec
      HexFormat(dst.hex())
    elif flag == "2":
      print("Encoding ...")
      dst = base64.b64encode(str)
      print(dst)
 
 
def HexFormat(str):
  """
  :param str: 16进制连续字符串
  :return: 码流格式的16进制串
  """
  i = 1
  str2 = ""
  while (i <= len(str)):
    str2 = str2 + str[i - 1] + str[i] + " "
    if (i + 1) %16 == 0 and (i + 1) % 32 != 0:
      str2 = str2 + " "
    elif (i + 1) %32 == 0:
      str2 = str2 + "\n"
    i = i + 2
 
 
if __name__ == '__main__':
  BaseToFlow()

结果:

Please input src: 
Please input Decode - 1 or Encode - 2: 
Decoding ...
02 92 00 18 17 04 00 00 04 04 ee b1 de 72 f2 90 
41 21 8d 63 17 d7 01 ec 

以上这篇Python 解码Base64 得到码流格式文本实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

利用python为运维人员写一个监控脚本

利用python为运维人员写一个监控脚本

前言: 一直想写一个监控方面的脚本,然后想到了运维这方面的,后来就写了个脚本,下面话不多说了,来一起看看详细的介绍吧。 准备: psutil模块(基本使用方法可以参考这篇文章:/post...

详解python脚本自动生成需要文件实例代码

python脚本自动生成需要文件 在工作中我们经常需要通过一个文件写出另外一个文件,然而既然是对应关系肯定可以总结规律让计算机帮我们完成,今天我们就通过一个通用文件生成的python脚本...

Python3爬楼梯算法示例

本文实例讲述了Python3爬楼梯算法。分享给大家供大家参考,具体如下: 假设你正在爬楼梯。需要 n 步你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼...

Python何时应该使用Lambda函数

Python 中定义函数有两种方法,一种是用常规方式 def 定义,函数要指定名字,第二种是用 lambda 定义,不需要指定名字,称为 Lambda 函数。 Lambda 函数又称匿名...

Python实现的求解最小公倍数算法示例

本文实例讲述了Python实现的求解最小公倍数算法。分享给大家供大家参考,具体如下: 简单分析了一下,前面介绍的最大公约数的求解方法跟最小公倍数求解方法类似,只需要改一个简单的条件,然后...