web-dev-qa-db-ja.com

pythonパスからディレクトリを完全に削除します

最近、pythonパスに、使用したくないものをいくつか追加しました。

export PYTHONPATH=$PYTHONPATH:/my/path

sys.path.removeを使用して、パス内の何かを削除できます。ただし、100%永続的ではありません上記のコマンドラインステートメントで追加した方法と同じです。

完全に削除ディレクトリをpythonパスから削除するにはどうすればよいですか?

11
Ryan Saxe

言及した行が.bashrcにある場合は、単に削除しても安全です。

現状では、「/ my/pathをPYTHONPATHに追加」と書かれているので、.bashrcの周りに他の人がいてもかなり安全です。

6
Alois Mahdal

.bashrcの「exportPYTHONPATH = ...」という行を削除し、「source .bashrc」を実行すると、それらのディレクトリはsys.pathに残ります。

.bashrcの「exportPATH」とは異なり、いくつかのディレクトリをPYTHONPATHにエクスポートすると、それらはpythonが常にチェックできるファイルにダンプされるようです。

したがって、必要なことは"export PYTHONPATH ="(export empty string)そして "source.bashrc"を実行します。これにより、以前に.bashrcでPYTHONPATHにエクスポートしたものがすべてクリーンアップされます。

13
Zack Su

まず、ターミナルからを使用してパス内のすべてを取得します

env | grep PYTHONPATH

次に、パスをエクスポートし、不要になったものを手動で削除します。

export PYTHONPATH=[this is where you paste the corrected paths, no square brackets needed]

セッションを再開し、.bashrcで何も変更していない場合は、セッションを閉じて再度開くことができます。

7
mgoldwasser

永続的なPythonパスは通常、〜/ .bashrcなどのシェル起動ファイルを介して設定されます。

シェル内でPYTHONPATH変数を変更すると、「export」を使用するときにシェルの現在のインスタンスとその子の値のみが変更されますが、その値を永続的に変更することを意図したものではありません。

次のコマンドを使用して、パスを変更する場所を見つけます。

grep -l PYTHONPATH ~/.*

スタートアップファイルにハードコードされている場合は、そこで値を編集し、新しいシェルを生成して出来上がり!

または、別の場所を参照する既存のパスの.pthファイルを介してPythonのパスにパスを追加することもできます。

この場合、Pythonのパスから完全に消去するのは、このファイルを消去するのと同じくらい簡単なはずです。

2
remote