[解決済み] "ImportError "です。Pythonスクリプトを実行しようとすると、「No module named」と表示される
質問
Pythonスクリプトを起動するスクリプトを実行しようとしています。 ImportErrorが発生します。という名前のモジュールがありません。しかし、ipythonを起動し、インタプリタを通して同じ方法で同じモジュールをインポートすると、モジュールは受け入れられます。
何が起こっているのか、どうすれば解決できるのか? PythonがPYTHONPATHをどのように使用するかを理解しようとしましたが、私は徹底的に混乱しています。 どんな助けでも大いに感謝します。
解決方法は?
この問題は、コマンドラインのIPythonインタプリタがカレントパスを使用する方法と、別のプロセスが使用する方法の違いによって発生します。 (IPythonのノートブック、外部プロセスなど)。IPythonはsys.pathだけでなく、現在の作業ディレクトリにあるインポートするモジュールを探します。コマンドラインからインタプリタを起動する場合、あなたが操作しているカレントディレクトリは ipython を起動したディレクトリと同じです。もし、あなたが
import os
os.getcwd()
を見れば、これが真実であることがわかるでしょう。
しかし、ipythonのノートブックを使っている場合、次のように実行します。
os.getcwd()
で、現在の作業ディレクトリは ipython_notebook_config.py ファイルでノートブックが動作するように指示したフォルダになります(通常、ipython_notebook_config.py で
c.NotebookManager.notebook_dir
の設定)。
解決策は、あなたのモジュールへのパスを python インタープリタに提供することです。最も簡単な方法は、そのパスを sys.path リストに追加することです。あなたのノートブックで、まず試してみてください。
import sys
sys.path.append('my/path/to/module/folder')
import module_of_interest
もしこれがうまくいかない場合は、path-to-importとは関係ない別の問題が発生している可能性があります。
この問題を解決するためのより良い(そしてより永続的な)方法としては ピートンパス これは、python のパッケージやモジュールを探すための追加のディレクトリをインタープリタに提供するものです。PYTHONPATH をグローバル変数として編集または設定することは OS に依存します。 ユニックス または ウィンドウズ .
関連
-
[解決済み】ValueError: pickleプロトコルがサポートされていません。3、python2 pickleはpython3 pickleでダンプしたファイルを読み込むことができない?
-
[解決済み】Python 3 ImportError: ConfigParser'という名前のモジュールがない
-
[解決済み] 悪いマジックナンバーエラーって何?
-
[解決済み] AndroidでPythonを実行する方法はありますか?
-
[解決済み] 最近のPythonでカスタム例外を宣言する適切な方法?
-
[解決済み] Pythonスクリプトのプロファイリングはどのように行うのですか?
-
[解決済み] スクリプトを実行しているPythonのバージョンを確認するにはどうしたらいいですか?
-
[解決済み] Pythonの「名前付きタプル」とは何ですか?
-
[解決済み] Pythonエラー "ImportError: No module named"
-
[解決済み] Python 3: ImportError "No Module named Setuptools" (Setuptoolsという名前のモジュールはありません)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ピローによる動的キャプチャ認識のためのPythonサンプルコード
-
python call matlab メソッドの詳細
-
Python カメの描画コマンドとその例
-
Pythonによるjieba分割ライブラリ
-
Pythonを使って簡単なzipファイルの解凍パスワードを手作業で解く
-
Python interpreted model libraryによる機械学習モデル出力の可視化 Shap
-
パッケージングツールPyinstallerの使用と落とし穴の回避
-
Python LeNetネットワークの説明とpytorchでの実装
-
[解決済み】socket.error: [Errno 48] アドレスはすでに使用中です。
-
[解決済み】WindowsでPYTHONPATHに追加して、モジュール/パッケージを見つけるには?