转换为base64字符串编码,反之亦然

时间:2012-09-17 16:52:07

标签: encoding hex base64 decoding

我正在尝试将字符串编码变量(最初是一个hex guid)转换为hex guid并返回到相同的字符串编码版本。

我使用python标准库的

的base64包进行此操作
>>> import base64
>>> guid
'Dw8OAwQFBgcIBQABAgMEBw==\n'
>>> cguid=base64.decodestring(guid).encode('hex')
'0f0f0e03040506070805000102030407'

上面的代码完成了任务。现在我需要将变量cguid转换回guid。

我如何完成任务?

我尝试过切换解码和编码,但它似乎不起作用。它显示了一个错误。

>>> base64.encodestring(cguid).decode('hex')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/nb/python/lib/python2.7/encodings/hex_codec.py", line 42, in hex_decode
    output = binascii.a2b_hex(input)
TypeError: Odd-length string
>>> 

1 个答案:

答案 0 :(得分:2)

base64.encodestring(cguid).decode('hex') =&gt; base64.encodestring(cguid.decode('hex'))