moduł aktualizacji przy imporcie do interpretera Pythona
W skrócie
Jak zmusić interpreter Pythona do załadowania najnowszej wersji kodu mojego modułu za każdym razem, gdy wprowadzę jakieś zmiany w kodzie modułu?
Lub przynajmniej przeładuj ostatnią zmodyfikowaną wersję, wpisując
>>> from myModule import *
do konsoli, bez konieczności restartowania całej konsoli Pythona i ustawiania wszystkiego raz za razem, gdy tylko wprowadzę jakieś zmiany? Jest to bardzo nieprzyjemne zachowanie podczas debugowania.
--------- DŁUŻSZA HISTORIA -----------
I próbował usunąć plik .pyci zaimportuj go ponownie - ale nie ma to żadnego skutku. Nie tworzy nawet pliku .pyc - więc oczekuję, że całkowicie zignoruje moje polecenie „importuj”, jeśli moduł jest już załadowany.
to również nie pomaga:
>>> mymodule.myfunc() # the old version
>>> del myModule # unload mymodle from python conole / interpeter
... # now I removed .pyc
... # now I make some modifications in mymodule.myfunc() code
>>> mymodule.myfunc() # module is unknonwn, ... OK
>>> import myModule # try to load modified version
>>> mymodule.myfunc() # stil the old version :(((((, How it can remember?
Próbowałem także Spyder, gdzie nazywa się ta funkcja„Deleter modułu użytkownika (UMD)” http://pythonhosted.org/spyder/console.html#reloading-modules-the-user-module-deleter-umd pomyślałem, że powinien to zrobić dokładnie, ale wydaje się, że tak nie jest (tak, sprawdziłem, że jest włączony).
Może czegoś mi brakuje - czy ktoś może mi wyjaśnić, jak ma być używany?
Czy jest to w jakiś sposób zależne od faktu, że importowany moduł nie znajduje się w „katalogu roboczym”, ale w PYTHONPATH?