我使用协议3转储了一个pickle文件,这是python3使用的默认协议,但在将其部署到python2上的谷歌云时,我需要将pickle文件转换为协议2。现在我想把这个protocol3的pickle文件直接转换成协议2的pickle文件,该怎么办?
发布于 2019-02-13 02:28:03
你能试试下面这样的东西吗?
我没有在标准中找到任何直接转换器。也许有人能做到。
将文件加载到object obj中,然后执行以下操作。
pickle.dump(obj, fileObject, 2) 有一个选项可以传递给转储函数:
https://docs.python.org/3.1/library/pickle.html#pickle.dump
粗略代码:
import pickle
with open('data1.pickle', 'rb') as f1:
data = pickle.load(f1)
with open('data2.pickle', 'wb') as f2:
pickle.dump(data, f2, 2)https://stackoverflow.com/questions/54656277
复制相似问题