私は以下の問題があります:txtファイルがあるGitHub(textstat)からPythonパッケージをインストールしました。パッケージ内で定義されたいくつかの関数では、txtファイルの内容(実際には簡単な英語の長いリスト)が使用されます。 テキストエディタでファイルを開いて保存すると、txtファイルのリストにいくつかの単語が追加されましたが、古いリストが使用されているように私のPythonコード(Jupyter Notebook)更新されたものではありません。 これを修正するにはどうすればよいですか?Pythonモジュールをリロードする
EDIT:reload()が私の問題を解決しなかったので、もう少し情報があります。また、カーネルやコンピュータ全体を再起動してもうまくいきませんでした。
textstat.pyのtxtファイル "easy_words.txt"(textstat.pyと同じディレクトリにあります)は、 "easy_word_set "次のように:
easy_word_set = set([ln.strip() for ln in pkg_resources.resource_stream('textstat', 'easy_words.txt')])
さて、私のJupyterノートに私はいつものようにtextstatインポート:どういうわけか
import textstat.textstat as ts
ts.easy_word_set
は私に最新のリストを与えます。しかし、私が例えば
ts.textstat.gunning_fog(word)
古いリストが使用されます。
リロード(your_module)の –
可能な複製([?私は(リロード)Pythonモジュールのアンロードするにはどうすればよい] http://stackoverflow.com/questions/437589/how-do-i-unload-reload-a-python-module) – mx0
textstat(またはpkg_resources)のように、easy_words.txtファイルに関する情報がキャッシュされています。もしそうなら、私たちはそのキャッシュをクリアする方法を理解する必要があります。 Linuxシステムでは、おそらくこの時点でstraceを介してプログラムを実行して、それがどのファイルを読み込んでいるのかを知ることができます。 – Waxrat