pip は古いパスを保持します。

pip は古いパスを保持します。

私の要件に合った質問/回答が見つかりません。重複した内容であれば申し訳ありません。その場合はお知らせください。

私はDebianサーバーでPython(2.7)を使用していますが、pipをインストールしたときに別のパッケージマネージャから削除して再インストールすると奇妙な動作が発生しました(aptも最終的にpypa.ioバージョンを使用することになったと思います)。

私がしたこと

1. pypaから直接pipをダウンロードし、Pythonとしてインストールします。
me:~$ curl -o get-pip.py https://bootstrap.pypa.io/pip/2.7/get-pip.py
me:~$ python get-pip.py
2. pipの取り外し
me:~$ pip uninstall pip
3. aptを使用したpipのインストール
me:~$ sudo apt-get install python-pip

私の質問?

今 pip を実行すると、次のエラーが発生します。

me:~$ pip
bash: /home/local/me/.local/bin/pip: No such file or directory

私の質問?

コマンドを実行するとき:

me:~$ which -a pip

私は得る:

/usr/bin/pip

パスに問題があるようですが、回避策がわかりません。誰でも解決策を教えてもらえますか?これは$ PATH変数の優先順位の問題かもしれませんか?

ありがとうございます!

ベストアンサー1

これはPATH変数の100%優先順位の問題です。また、PATHを編集する場合は、シェル(ターミナル)を再ロード/再起動する必要があることに注意してください。シェルはさまざまなプログラムで見つかった場所のキャッシュを保持するため、PATH変数を編集/再ロードするだけでは十分ではありません。プログラムの場所キャッシュもフラッシュする必要があります。

とにかく言葉ではありません。 Pipenvをインストールすることをお勧めします。これは、PyPiソフトウェアをインストールするために正式に推奨される方法です。これは pip をすぐに置き換えることができますが、無限に拡張された依存関係マネージャ、反復可能な (ハッシュ) インストール、および virtualenv の自動内部使用によって各プロジェクトのプロジェクト依存関係を分離して競合を防ぎ、より良い設定ファイル (要件の代わりに Pipfile という名前)これが指定されています)を提供します。 txt)。

それはあなたのすべての問題を100%解決します。

同じシステムにpyenvをインストールすることもできます。Pipenvはそれを検出して、各プロジェクトフォルダが使用するPythonのバージョンを正確に管理できるようにします。フォルダに新しいプロジェクトを作成し、特定のバージョンのPythonを使用するように指示するには、pipenv install --python=3.10次のようにします。

おすすめ記事