2

PYTHONPATH をクリーンアップしたい。

次のように /home/me/.profile に追加したことはわかっています。

PYTHONPATH=/home/hoff/code/someproject/pythonmods:$PYTHONPATH
PYTHONPATH=/home/hoff/code/google_appengine/google/appengine/tools:$PYTHONPATH
export PYTHONPATH

しかし、PYTHONPATH を追加した場所が他にもあるはずです。Python インタープリターに入って を見るとsys.path、あらゆる種類の追加のディレクトリがあります。

それらをどこで指定した可能性がありますか、つまり、PYTHONPATH (linux/ubuntu 上) を追加できるすべての可能な場所は何ですか?

4

3 に答える 3

3

sys.pathPYTHONPATH同じではありません。前者は後者を包含します。の値を調べるには、シェルPYTHONPATHで実行します。echo $PYTHONPATH

ファイル/usr/{local/,}lib/pythonX.Y/dist-packages/site.pyが更新されるため、、、および でsys.pathインストールされたパッケージをインポートできます。これらのパッケージをアンインストールすると、(あなたの ではありませんが) が縮小されます。apt-geteasy_installpipsys.pathPYTHONPATH

于 2012-04-26T11:57:33.497 に答える
1

前に言ったように...それはほとんどどこにでも設定することができます。私が見るであろういくつかの場所(あなたのログインシェルが典型的なbashであると仮定して...)

.bashrc
/etc/profile
Anything in /etc/profile.d/  (typically loaded from /etc/profile)
~/.bash_profile
~/.bash_login

からman bash

  When bash is invoked as an interactive login shell, or as
  a non-interactive shell with the --login option,  it  first
  reads  and  executes commands from the file /etc/profile, 
  if that file exists.  After reading that file, it looks for
  ~/.bash_profile, ~/.bash_login, and ~/.profile

   When an interactive shell that is not a login shell is started,
   bash reads and executes commands from  ~/.bashrc,  if that
   file exists.
于 2012-04-26T13:02:07.560 に答える
1

環境変数を設定できる場所。

プロセスは親の環境を継承するため、シェル構成ファイル、シェルのコマンドライン、呼び出す中間スクリプト、python スクリプト (sys.path を使用)、使用するライブラリなど、どの段階でも変更できます。

于 2012-04-26T12:14:47.903 に答える