【问题标题】:Python: How to decode uuencoded textPython:如何解码 uuencoded 文本
【发布时间】:2018-07-28 05:49:00
【问题描述】:

我一直在阅读有关 uuencoding 的内容,并且想知道如何使用 Python 解码此链接中给出的以下示例。

https://en.wikipedia.org/wiki/Uuencoding

原文:猫

Uuencoded 文本:#0V%T

Python 2

$ python -c 'print "Cat".encode("uu")'
begin 666 <data>
#0V%T

end

$

Python 3

$ python3 -c "from codecs import encode;print(encode(b'Cat', 'uu'))"
b'begin 666 <data>\n#0V%T\n \nend\n'
$

【问题讨论】:

    标签: python uuencode


    【解决方案1】:

    它只是原函数的逆函数......

    让我试着告诉你。我将使用 2 种常见的编码类型 uu 和 base-64。

    Python 3

    from codecs import decode,encode
    import uu
    
    orig="Cat"
    encoding_types=['uu','base-64']
    for et in encoding_types:
        enc_data=encode(orig.encode(),et)
        un_enc_data=decode(enc_data,et)
        print("\n\nEncoding  : {}".format(et))
        print("Orig          : {}".format(orig))
        print("Encoded       : {}".format(enc_data))
        print("byte UnEncoded: {}".format(un_enc_data))
        print("utf8 UnEncoded: {}".format(un_enc_data.decode()))
    

    这应该输出

    Encoding  : uu
    Orig          : Cat
    Encoded       : b'begin 666 <data>\n#0V%T\n \nend\n'
    byte UnEncoded: b'Cat'
    utf8 UnEncoded: Cat
    
    
    Encoding  : base-64
    Orig          : Cat
    Encoded       : b'Q2F0\n'
    byte UnEncoded: b'Cat'
    utf8 UnEncoded: Cat
    

    我们需要最终的 .decode(),因为我们最初使用 encode() 将 str 数据对象转换为字节。

    【讨论】:

      猜你喜欢
      • 2016-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-23
      • 2023-02-04
      • 2010-09-30
      • 2023-03-03
      • 1970-01-01
      相关资源
      最近更新 更多