最近私は新しいコンピュータ(私の最初のMac、以前はPCがあった)を手に入れました。私は私の研究に使用するデータ解析機能が充実したモジュールを持っており、今までモジュールを編集する理由はありませんでした。しかし突然、Jupiterのノートブックでモジュールをインポートすると、新しい機能は認識されません。モジュールの新機能がiPythonのノートブックで見られない
import altdata as alt
alt.retrieve_data_from_umiami_latlonam('GISS','AQUA', 'ts')
そして、これは、次のエラー発生します私は私の人生のために問題が何であるかを把握することはできません
-----------------------------------------------------------------------
----
AttributeError Traceback (most recent call
last)
<ipython-input-3-9ccbc97fd6b8> in <module>()
1
----> 2 alt.retrieve_data_from_umiami_latlonam('GISS','AQUA', 'ts')
AttributeError: 'module' object has no attribute 'retrieve_data_from_umiami_latlonam'
を。コマンドラインを試してみると完璧に動作しますが、何らかの理由で新しい機能がノートブックで動作しません。何か案は?
UPDATE
私が(/ mymodules)モジュールが配置されているディレクトリにノートブックを開いたとき、それは働くようです。私はmymodulesを含むディレクトリでそれを開いて、私はエラーを取得する
import sys
sys.path.append(r'/mymodules')
import altdata as alt
使用
。何か案は?
おそらく、PYTHON_PATHに複数のパスのモジュールがリストされています。 'sys.path.append(r '/ mymodules')'の代わりに、パスの先頭に追加すると問題を解決するはずです。つまり、 'sys.path.insert(0、r '/ mymodules')' – Sebastian
です。パス名を変更して修正しました。 'sys.path.append("/mymodules ")'が働いていました。助けてくれてありがとう – BenL
これはうまくいきました。一般に、Pythonはパッケージのsys.pathリストを順番にスキャンし、以前のパスでパッケージを見つけたので、 'sys.path.insert(0、 '/ some_module')'を 'append'経由でお勧めしますここにリストされていると、あなたが追加したパスを使用しても気にならないでしょう – Sebastian