1. ホーム
  2. python

[解決済み] Pythonにモジュールを "reimport "し、インポート後にコードを変更する方法

2022-09-17 09:43:05

質問

私は foo.py

def foo():
    print "test"

IPythonでは使っています。

In [6]:  import foo
In [7]:  foo.foo()
test

次に foo() に変更します。

def foo():
    print "test changed"

IPythonの場合、起動した結果はやはり test :

In [10]:  import foo
In [11]:  foo.foo()
test

では、使っています。

In [15]: del foo
In [16]:  import foo
In [17]:  foo.foo()
test

を削除して foo.pyc を削除してください。 foo.py が存在しますが、まだうまくいきません。

更新されたコードをランタイムに再インポートする方法を教えてください。

どのように解決するのですか?

Python 2.xの場合

reload(foo)

Python 3.xの場合

import importlib
import foo #import the module here, so that it can be reloaded.
importlib.reload(foo)