zoukankan      html  css  js  c++  java
  • python将base64编码/解码

      本样例旨在解决base64编码的解码,提供了四种场景,希望可以帮到大家~

    # -*- coding:utf-8 -*-
    #将base64编码/解码包
    import base64
    #导入url解码包
    from urllib import parse
    #普通中文
    s = "你好"
    #带竖线的中文
    str1 = '中国|陕西省|西安市|雁塔区|小寨东路|178号'
    #base64编码后的样例
    example = '5Lit5Zu9fOmZleilv+ecgXzopb/lronluIJ86ZuB5aGU5Yy6fOWwj+WvqOS4nOi3r3wxNzjlj7c='
    #先base64编码,再url编码后的样例
    example_new = '5Lit5Zu9fOmZleilv%2BecgXzopb%2FlronluIJ86ZuB5aGU5Yy6fOWwj%2BWvqOS4nOi3r3wxNzjlj7c%3D'
    #场景一:普通中文base64编码后,得到带有b的编码结果
    #将字符为unicode编码转换为utf-8编码
    bs = base64.b64encode(s.encode("utf-8"))
    #得到的编码结果前带有b
    print('带b的编码结果:',bs)
    #将上面带有b的编码结果解码
    bbs = str(base64.b64decode(bs), "utf-8")
    #解码
    print('带b的编码结果解码:',bbs)
    #场景二:将带有竖线(可以没有)的中文base64编码后,得到不带b的编码结果
    bs = str(base64.b64encode(str1.encode("utf-8")), "utf-8")
    #去掉编码结果前的 b
    print('不带b的编码结果:',bs)
    #将上面不带b的编码结果解码
    bbs = str(base64.b64decode(bs), "utf-8")
    #解码
    print('不带b的编码结果解码:',bbs)
    #场景三:base64编码后的样例的解码
    bbs = str(base64.b64decode(example), "utf-8")
    print('base64编码后的样例解码:',bbs) # 解码
    #场景四:先base64编码,再url编码后的样例的解码
    str3 = parse.unquote(example_new)  #解码字符串
    print('url解码后:',str3)                 #str3=haha哈哈
    bbs = str(base64.b64decode(str3), "utf-8")
    print('先base64编码,再url编码后的样例的解码:',bbs) # 解码

    结果:

    带b的编码结果: b'5L2g5aW9'
    带b的编码结果解码: 你好
    不带b的编码结果: 5Lit5Zu9fOmZleilv+ecgXzopb/lronluIJ86ZuB5aGU5Yy6fOWwj+WvqOS4nOi3r3wxNzjlj7c=
    不带b的编码结果解码: 中国|陕西省|西安市|雁塔区|小寨东路|178号
    base64编码后的样例解码: 中国|陕西省|西安市|雁塔区|小寨东路|178号
    url解码后: 5Lit5Zu9fOmZleilv+ecgXzopb/lronluIJ86ZuB5aGU5Yy6fOWwj+WvqOS4nOi3r3wxNzjlj7c=
    先base64编码,再url编码后的样例的解码: 中国|陕西省|西安市|雁塔区|小寨东路|178号
  • 相关阅读:
    luogu P4544 [USACO10NOV]Buying Feed G 斜率优化dp 双层?
    luogu P3594 [POI2015]WIL-Wilcze doły 单调队列dp+双指针
    luogu P2384 最短路 spfa+数学?
    luogu P2071 座位安排 二分图最大匹配 双重的
    luogu P1841 [JSOI2007]重要的城市 dp+Floyd
    luogu P2034 选择数字 单调队列优化dp 脑残行为,导致wa了很多遍
    【最短路-判断正权环 Floyd】Currency Exchange POJ
    【最短路-判断正权环 Bellman-Ford】Arbitrage POJ
    【最短路/矩阵+最小环】0 or 1 HDU
    【最短路+区间枚举】昂贵的聘礼 POJ
  • 原文地址:https://www.cnblogs.com/xiao02fang/p/12828449.html
Copyright © 2011-2022 走看看