блокнот 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
, он работает как положено.
Ожидается ли такое поведение?