pythonモジュールのロードメカニズムとモジュールの再ロード
943 ワード
ロードモジュール
importもfromも付与文です. importは、モジュールオブジェクト全体を変数名に割り当てます.たとえばimport A:A.pyというファイル名のモジュールがインポートされ、Aとして割り当てられたモジュールオブジェクトが生成されます. from module import x:xは、モジュール内の同じ名前の変数のオブジェクトを参照します.モジュールがロードされていない場合、from文はモジュールを最初にロードし、モジュールと同じ名前の変数名を作成して参照します.
import dir 1が欲しいなら.dir2.mod、ディレクトリdir 1、dir 2の下に__が必要init__.py.__init__.pyの役割は、ディレクトリが実際のモジュールファイルではないため、このディレクトリをモジュールとして使用することです.init__.pyは任意のpythonコードを書き込むことができ、空であってもよい.
コードが実行されると、モジュールはすべてメモリにロードされます.これはpythonスクリプトを変更した場合、現在の実行では有効になりません.新しいコードをすぐに実行したい場合は、このモジュールを再ロードできます.
モジュールの再ロード
使用方法:
注意: reloadはロードされたモジュールを再ロードしますが、元に使用されていたインスタンスは古いモジュールを使用し、新しい本番のインスタンスは新しいモジュールを使用します. reloadは
References[1]pythonモジュール、reloadすべてのモジュールおよびピット[2]Python reload()関数
importもfromも付与文です.
import dir 1が欲しいなら.dir2.mod、ディレクトリdir 1、dir 2の下に__が必要init__.py.__init__.pyの役割は、ディレクトリが実際のモジュールファイルではないため、このディレクトリをモジュールとして使用することです.init__.pyは任意のpythonコードを書き込むことができ、空であってもよい.
コードが実行されると、モジュールはすべてメモリにロードされます.これはpythonスクリプトを変更した場合、現在の実行では有効になりません.新しいコードをすぐに実行したい場合は、このモジュールを再ロードできます.
モジュールの再ロード
使用方法:
# Python3
from imp import reload
reload(modulename)
注意:
from [module] import [object]
形式の再ロードをサポートしていません.実際にはmoduleを再ロードすればいいです.References[1]pythonモジュール、reloadすべてのモジュールおよびピット[2]Python reload()関数