Python reload() 関数
説明
reload()以前に読み込んだモジュールを再読み込みするために使用します。
Python2.x バージョンではreload()組み込み関数ですが、Python2.x ~ Python3.3バージョンで移されましたimpパッケージに(Python2.x でも imp パッケージをインポートして使用できます)。Python3.4 以降のバージョンではimportlibパッケージに移されました。
構文
Python2.x バージョンでは組み込み関数のため、直接使用できます:
reload(module)
Python2.x 〜 Python3.3 より前のバージョン:
import imp imp.reload(module)
或
from imp import reload reload(module)
Python3.4 以降のバージョン:
import importlib importlib.reload(module)
或
from importlib import reload reload(module)
パラメータ
- module -- モジュールオブジェクト。
戻り値
モジュールオブジェクトを返します。
例
以下の例は reload() の使用方法を示しています:
Python2.x: sys モジュールを再読み込みし、デフォルトエンコーディングを utf8 に設定します
>>>import sys
>>> sys.getdefaultencoding() # 現在のデフォルトエンコーディング
'ascii'
>>> reload(sys) # reload を使用
<module 'sys' (built-in)>
>>> sys.setdefaultencoding('utf8') # エンコーディングを設定
>>> sys.getdefaultencoding()
'utf8'
>>>
Python2.x〜Python3.3: sys モジュールを再読み込みします
>>> import sys, imp
>>> imp.reload(sys)
<module 'sys' (built-in)>
>>> imp.reload(sys)
<module 'sys' (built-in)>
>=Python3.4: sys モジュールを再読み込みします
>>> import sys, importlib
>>> importlib.reload(sys)
<module 'sys' (built-in)>
>>> importlib.reload(sys)
<module 'sys' (built-in)>
Python 組み込み関数