unsupported pickle protocol: 5
問題背景
今天遇到了unsupported pickle protocol: 5,記錄一下解決思路和解決過程
遇到了這個問題就說明我的pickle是用python3.8生成的,但是我的anaconda里默認的是python3.6,所以讀取這個pickle失敗了
問題分析
明顯是pickle的原因,直接去官網(wǎng)看看(了解一下pickle與python的關(guān)系)
pickle — Python object serialization — Python 3.10.4 documentation?
對應(yīng)的協(xié)議5是3.8中的,所以當(dāng)時在pickle.dump的時候是在python3.8中使用協(xié)議5序列化的!
解決辦法
a)卸載現(xiàn)有的anaconda版本,安裝配備python3.8及以上版本的anaconda(我不會選這個,因為前天為了安裝mpldatacursor歷經(jīng)波折最后把最新的anaconda卸載了,安裝了默認python版本為3.6的anaconda5.2.0)
b)保存和讀取pkl文件用同樣的python版本
關(guān)于解決辦法的詳細操作
a)關(guān)于解決方案a:大家都會的,就是卸載+重裝anaconda(記得找到對應(yīng)的版本哦)
關(guān)于怎么查找對應(yīng)的版本可以參考這篇博文:
《軟件安裝與使用教程》— 三大操作系統(tǒng)的Anaconda版本與Python版本對照表_木楞人的博客-CSDN博客_anaconda python版本《軟件安裝與使用教程》— 三大操作系統(tǒng)的Anaconda版本與Python版本對照表_木楞人的博客-CSDN博客_anaconda python版本《軟件安裝與使用教程》— 三大操作系統(tǒng)的Anaconda版本與Python版本對照表_木楞人的博客-CSDN博客_anaconda python版本
b)關(guān)于解決方案b:接下來就開始用python3.6生成并讀取pickle
我們先了解一下pickle
Python之Pickle學(xué)習(xí)_奧卡姆的剃刀的博客-CSDN博客_pickle python
我的計劃是:csv轉(zhuǎn)txt——txt轉(zhuǎn)list——用list生成pkl——讀取pkl
最后讀取成功!
關(guān)于解決本次問題我參考的博文
關(guān)于unsupported pickle protocol: 5的解決辦法
ValueError: unsupported pickle protocol: 5_頭腦風(fēng)暴OO的博客-CSDN博客
總結(jié)
以上是生活随笔為你收集整理的unsupported pickle protocol: 5的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Windows】电脑清理个人隐私数据信
- 下一篇: 搜索引擎的一些简单命令-防止自己忘记系列