无法使用导入的本地类进行腌制

问题描述

只要我从自己的库中导入类,我的pickle就失败了,为什么? 例如:

def fun():
   print(1)
if __name__=="__main__":
   import pickle
   pickle.dump(fun,open('save','wb'))

上面的脚本工作正常,但如果我添加 from xxx.yyy import zzz(我本地图书馆的类):

_pickle.PicklingError: Can't pickle <function fun at 0x7f5e40665e18>: attribute lookup fun on __main__ failed 发生。

为什么?有什么解决方法吗?顺便说一下,这个问题最初是在我尝试使用 torch.multiprocessing 进行分布式训练时出现的,然后我将问题缩小到了上面。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)