66

と思った

import sys
sys.path.append("/home/me/mydir")

私のpythonpathにディレクトリを追加しています

sys.pathを出力すると、ディレクトリがそこにあります。

次に、新しいコマンドを開きますが、もうありません。

しかし、どういうわけか、Pythonはそのディレクトリに保存したモジュールをインポートできません。

私は何を間違っていますか?

.profileを読むか、.bash_profileでうまくいきます。

追加する必要がありますか:

PATH="/Me//Documents/mydir:$PYTHONPATH"
export PATH

それを機能させるには?

4

6 に答える 6

87

sys.pathその Python インタープリターの寿命にのみ適用される変更。永続的に実行したい場合は、PYTHONPATH環境変数を変更する必要があります:

PYTHONPATH="/Me/Documents/mydir:$PYTHONPATH"
export PYTHONPATH

PATH完全に別の実行可能ファイルのシステム パスであることに注意してください。

**上記~/.bash_profileとそれを使用するソースを書くことができますsource ~/.bash_profile

于 2010-08-02T12:28:01.447 に答える
10

マシューのソリューションがうまくいかなかった理由がわかりません (OSX10.8 を使用しているか、macports と関係がある可能性があります)。しかし、次のファイルの最後に次を追加しました~/.profile

export PYTHONPATH=/path/to/dir:$PYTHONPATH

私のディレクトリは現在pythonpathにあります-

my-macbook:~ aidan$ python
Python 2.7.2 (default, Jun 20 2012, 16:23:33) 
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', '/path/to/dir', ...  

そのディレクトリからモジュールをインポートできます。

于 2012-11-13T10:44:32.657 に答える
2

$PYTHONPATH 環境変数を設定しても、Mac 上の Spyder IDE の iPython ターミナルには影響しないようです。ただし、Spyder のアプリケーション メニューには「PYTHONPATH マネージャー」が含まれています。ここにパスを追加すると、問題が解決しました。「PYTHONPATH マネージャー」は、アプリケーションの再起動後も持続します。

Windows PC で PYTHONPATH 環境変数を設定すると、Spyder で PYTHONPATH マネージャーを使用せずに期待される動作 (モジュールが検出される) が得られるため、これは Mac に固有のものです。

于 2016-06-10T13:22:56.137 に答える
2

MacOS Big Surf では、「エクスポート」を追加するファイルは$HOME/.zprofile

したがって、これは PYTHONPATH を Mac Big Surf 環境変数に追加するために機能するはずです。

export PYTHONPATH=$HOME/my_folder

ファイルが存在しない場合は$HOME、通常、で作成します/Users/my_user_name

このファイル名の変更は、MacOS Big Surf のデフォルト シェルzshbash

于 2021-05-25T16:51:29.363 に答える
2

Mathew の答えは端末の python シェルでは機能しますが、私の場合は IDLE シェルでは機能しませんでした。これは、すべてを Python2.7.7 に置き換える前に、多くのバージョンの python が存在していたためです。IDLEの問題をどのように解決したか。

  1. ターミナルでは、cd /Applications/Python\ 2.7/IDLE.app/Contents/Resources/
  2. 次にsudo nano idlemain.py、必要に応じてパスワードを入力します。
  3. os.chdir(os.path.expanduser('~/Documents'))この行の後に追加しましたsys.path.append("/Users/admin/Downloads....") 注: 引用符の内容を、Python モジュールを追加するディレクトリに置き換えます
  4. 変更を保存するには、ctrl+x を入力して、アイドル状態で開いて、python モジュールをインポートしようとします。エラーは発生しません!!!
于 2014-06-26T08:53:30.253 に答える