He escabechado archivos usando el protocolo 3 en python3, y ahora necesito desempaquetarlos con python2, ¿qué puedo hacer?
mydata = pickle.load(myfile, "rb")
ValueError: unsupported pickle protocol: 3
Esto está relacionado con:ValueError: protocolo de pickle no compatible: 3, python2 pickle no puede cargar el archivo volcado por python 3 pickle?
Claramente, con previsión, debe establecerprotocol=2
cuando vuelcas tu archivo pickle en python3 si quieres poder desbloquearlo con python2.
Sin embargo, ¿qué sucede si desafortunadamente está atascado con archivos que fueron encurtidos en python 3 usando el protocolo 3 y ahora debe leerlos con python2? ¿Hay algún trabajo alrededor?
Hay una pregunta relacionada, pero parece ser un problema central diferente:Despedir OrderedDict de python3 en python2