加载pickle读取.pkl文件,报错显示ModuleNotFoundError: No module named '__builtin__' ?

我的项目目录结构如下图所示:
加载pickle读取.pkl文件,报错显示ModuleNotFoundError: No module named '__builtin__' ?
我在test.py文件中想利用pickle把m30k_deen_shr.pkl文件打印出来看看,但是运行却报错了,我所用的python是3.6.12版本的,不知道为什么会有这样的错误,有没有大佬可以帮我看看,感激!


回答:

__builtin__

是python 2.x的写法,你的pkl 是不是用python 2.x版本生成的

生成pkl的代码还在不在,用python 3.0重新训练一下,生成看看,还有最好不要用w模式写入,这样会以文本形式写入,还可能会有换行符的问题,用wb模式写入


回答:

兄弟,你这个是Transformer做翻译任务的pytorch实现的代码吧,你看看人家代码里面写清楚了,data = pickle.load(open(opt.data_pkl, 'rb'))的pickle并不是通过import pickle来的,而是import dill as pickle来的,实际上用的是dill库而不是pickle库,你在发现自己报错而这个github项目的代码却不会报错的时候,你就应该去查看他是怎么写的了。

以上是 加载pickle读取.pkl文件,报错显示ModuleNotFoundError: No module named '__builtin__' ? 的全部内容, 来源链接: utcz.com/p/938836.html

回到顶部