python - 缓存实例方法时无法腌制命名元组
问题描述
我试图缓存一个返回命名元组列表的python类的实例方法,但这个错误似乎是不可避免的:
pickle.PicklingError: Can't pickle <class '__main__.MyClass'>: it's not found as __main__.MyClass
如果我们myMethod
将实例方法命名为我想要缓存的结果,我的代码如下所示:
import joblib
class MyClass():
def __init__(self):
mem = joblib.Memory('./cache_dir')
self.myMethod = mem.cache(self.myMethod)
def myMethod(self):
<does something>
return list_of_namedtuples
是什么导致了错误?有没有办法绕过它?
解决方案
推荐阅读
- gstreamer - 无法使用 nvh265enc gstreamer 插件的无损预设
- excel - 如何在 Excel VBA 中进行顶级过滤
- localization - Blazor WebAssembly - 使用 .resx 进行本地化,无需重新加载应用程序的语言更改可能吗?
- python - 我该如何解决 KeyError:“[Index(['lymphoid_neoplasm'], dtype='object')] 都在 [index] 中”
- outlook - 带有 Outlook 客户端和 Google 日历的 Zimbra IMAP 服务器:接受团队邀请
- reactjs - react-final-form 中的自定义输入验证
- angular - “HTMLFormElement”类型的参数不能分配给“ElementRef”类型的参数
' - javascript - 使用外键保存序列化程序(django rest 框架)
- dockerfile - Dockerfile:添加和复制失败且没有错误
- reactjs - 使用 Context 更新每个屏幕上的数据