У меня есть ячейка, которая записывает класс в файл
%%writefile example_class.py
class Example(object):
def __init__(self):
...implementation...
Теперь я могу импортировать этот класс в другую ячейку следующим образом:
from .example_class import Example
example = Example()
...using example...
Все работает нормально, поэтому далеко. Однако, когда я потом сделаю следующее:
- Обновить класс примера (первая ячейка) и выполнить ячейку (перезаписать)
- Выполнить вторую ячейку, которая загружает класс примера
Изменения, сделанные в 1. не активны, когда я выполняю вторую ячейку. Вторая ячейка по-прежнему использует первую версию класса Example (без обновлений). Есть ли способ обеспечить, чтобы вторая ячейка импортировала самую последнюю версию класса Example?
Один из способов заставить все работать - перезапустить среду, но я бы хотел избежать этого, потому что это очень много времени (у меня есть много ячеек, которые нужно выполнить до этого).
Кроме того, мне действительно нужно записать источник python в первую ячейку на диск. Поэтому просто иметь обычную ячейку без %%writefile example_class.py
для меня не вариант.