Jupyter笔记本电脑
%load_ext autoreload
%autoreload 2
启用的选项会自动重新加载joblib对象。
这是一个最小的示例:
我有两个文件notebook.ipynb
和classes.py
#classes.py
class Printer():
def print_hi(self):
print("hi")
#print("how are you?")
#notebook.ipynb
%load_ext autoreload
%autoreload 2
import joblib
import classes as c
printer = c.Printer()
printer.print_hi()
#output hi
joblib.dump(printer, "printer.joblib")
printer_jl = joblib.load("printer.joblib")
printer_jl.print_hi()
#output hi
到目前为止,一切正常
但取消注释print("how are you?")
printer_jl
后也会发生变化。
printer_jl.print_hi()
#output hi
#output how are you?
如果我不使用autoreload
,它将按预期工作。
这种行为是预期的吗?