Как перезагрузить функцию из модуля в Python - PullRequest
0 голосов
/ 03 сентября 2018

У меня есть функция myFunc(a,b), определенная в myMod в MyFolder. Я импортирую функцию и вызываю функцию следующим образом, она работает.

from MyFolder.myMod import myFunc
myFunc(a,b)

Теперь я обновляю свою функцию. Я хотел бы перезагрузить свою функцию, но reload(myMod.myFunc) не работает. reload(MyFolder.myMod) тоже не работает. Могу я узнать причину?

1 Ответ

0 голосов
/ 03 сентября 2018

Модули компилируются только один раз при их импорте. И когда вы изменяете их, Python не будет забирать их, пока не будет импортирован, т.е. перекомпилирован. Таким образом, чтобы обойти это, вы можете сделать это

import importlib
importlib.reload(module_name)

для Python 3.x

А для Python 2.x вы можете

reload(module_name)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...