
新しく作成されたUbuntu 16.4仮想インスタンスに作成したPythonアプリケーションをインストールしようとしています。以前に自分のPCにインストールしたPythonパッケージをいくつかインストールする必要があります。
このメッセージを見るまで、すべてがうまくいっていました。
You are using pip version 8.1.1, however version 10.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
まあ、私はこれが無害だと思った。
ただし、これを実行した後に次に pip を実行すると、次の結果が表示されます。
$ pip freeze
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
以前の時点に戻る必要があると思います。
$ sudo apt install python-pip
それから
$ sudo apt install python-pip
...
Setting up python-pip (8.1.1-2ubuntu0.4) ...
さて、pip 8.1.1を復元しました。思いやり
$ pip freeze
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
問題は、pipのアップグレードがめちゃくちゃだということです。どうすれば解決できますか?
答え1
$python -m pip uninstall pip
これを使用すると、古いpipバージョンが提供されます。
答え2
最近、Ubunutu 16.04で同じ問題が発生しました。
これを行うときは、次の点に注意してください。
/usr/bin/pip freeze
トレースエラーが発生します。 which pipを実行すると、次の結果が表示されます。
/usr/local/bin/pip
私が使用しているシェルが/usr/bin/pip
正しくありません。私は/usr/bin/pip
新しい名前を以前の名前があった場所に変更し、シンボリックリンクしました。
ln -s /usr/local/bin/pip /usr/bin/pip
pip Freezeを実行してもエラーは表示されません。インストールされているパッケージを見ることができます。
答え3
どのように機能するのかわかりませんが、/usr/bin/pipファイルを編集し、問題の7行を変更しました。
from pip import main
到着
from pip._internal import main
これで問題が解決しました。
私はWindows 10でUbuntuを使用しています。
/usr/local/bin/pip
他の答えで述べたように、これは私のコンピュータ間の違いです/usr/bin/pip
。
答え4
sudo python3 -m pip install --force-reinstall pip
これにより、間違った点を選択する問題が解決されます。