1

いくつかの .py ファイルを含むディレクトリを持つように PYTHONPATH を設定しています。

Python で「インポート ファイル」と入力すると、ファイルが見つかりません (「wsj10 という名前のモジュールがありません」と表示されます)。

ただし、ディレクトリに移動して同じプロセスを繰り返すと、ファイルが見つかります。

PYTHONPATH が無視される理由がわかりません。一部のソフトウェアのインストール手順の正確な指示に従ったので、正しいことをしていることはわかっています。

PYTHONPATH が無視される、またはインポートが機能しない状況はありますか?

ありがとう。

以下のコメントに続いて、ここにトランスクリプトがあります:

  1. file1.tgz を file1/ に解凍します。file1.tgz には、file1.py という名前のライブラリ/ファイルが含まれています。

  2. シェルに次のように入力します。

    export PYTHONPATH=`pwd`/file1/:./
    
  3. echo $PYTHONPATH変数が設定されたことを示します。

  4. Python を実行し、「import file1」と入力します

エラーが発生します:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named file1

最初に「cd file1」を実行してから file1 をインポートすると、ファイルが識別されます。

4

1 に答える 1

1

PYTHONPATH が無視される、またはインポートが機能しない状況はありますか?

はい。/home/me/.bashrc に PYTHONPATH を設定し、ターミナルからすべて正常に動作しましたが、Apache w/ mod_wsgi が Python スクリプトを開始すると、.bashrc を何も知らないシステムまたは専用ユーザーの下で動作します。

この特定の状況では、apache config を使用して apache の python パスを設定しました (WSGIPythonPath オプション)。

于 2014-12-04T13:47:35.980 に答える