0

我正在尝试将字符串编码变量(最初是十六进制 guid)转换为十六进制 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
>>> 
4

1 回答 1

2

base64.encodestring(cguid).decode('hex')=> base64.encodestring(cguid.decode('hex'))

于 2012-09-17T16:58:50.167 回答