pickle and cPickle
pickle和cPickle是python對象的轉儲文件,保存的是python對象
他們分別是python2和python3的對應部分,建議引入的時候采用以下方法:
try:
import cPickle as pickle
except:
import pickle
他們分別遵從不同的協議:
Pickle使用不同的protocols
方法將您的數據轉換為二進制流。
您必須在python 3中指定一個低於3
能夠在python 2中加載數據的協議。您可以protocol
在調用時指定參數pickle.dump
。
File "/home/dongpeijie/darknet/yolo-compute-map-master/voc_eval.py", line 130, in voc_eval
recs = cPickle.load(f)
ValueError: unsupported pickle protocol: 3
解決方法:
-
try passing
protocol=2
topkl.dump(worddict, f, protocol=2)
-
可以直接使用python3 ****.py
-
如果本地用的是python2.7,那么用Miniconda建立一個3.6的python環境