0

我有两个进程在具有不同 python 版本(2.7 和 2.2)的不同机器上运行。我需要知道是否很容易在 python 2.7 中腌制 python 字典,然后在 python 2.2 中以相同的语法取消腌制,或者有区别。

味精 = {'k1':'v1',...,'k100':'v100'}

python 2.7中的酸洗

msg = zlib.compress(cPickle.dumps(msg))
msg =  encrypt(msg)     # pls assume encrypt/decrypt methods md5 hashing
msg = cPickle.dumps(msg)

这是在通过发送的 url 请求中发送的

urllib2.urlopen(urllib2.Request(destinationURL, msg))

在 python 2.2 中解压

msg = cPickle.loads(msg)
msg =  decrypt(msg) # decryption then md5 hashing (msg)
msg = cPickle.loads(zlib.decompress(msg))

这个'msg'是python 2.2进程无法使用的不可读格式,因此它发送包含'Message Format Invalid'的错误消息

实际问题在于 python 2.2 中的 Unpickling。任何有助于正确格式化字符串以获得响应的帮助将不胜感激。我很抱歉让你们中的一些人等待,我昨天无法访问远程机器,如果您觉得其他地方没有得到答复,请重新打开。

4

0 回答 0