web-dev-qa-db-ja.com

Ubuntuで壊れたPython3 pip3インストール

Ubuntu16.04にpython3とpip3を正常にインストールしましたが、pip3のインストールが壊れています。この問題を修正するにはどうすればよいですか? pip3 installのエラー情報は次のとおりです。

# pip3 install xlwt
Traceback (most recent call last):
File "/usr/bin/pip3", line 9, in <module>
  from pip import main
File "/usr/lib/python3/dist-packages/pip/__init__.py", line 21, in <module>
  from pip._vendor.requests.packages.urllib3.exceptions import DependencyWarning
ModuleNotFoundError: No module named 'pip._vendor.requests'

Sudo -H pip3 install --upgrade pipの出力

Sudo -H pip3 install --upgrade pip  
Traceback (most recent call last):
File "/usr/bin/pip3", line 9, in <module>
  from pip import main
File "/usr/lib/python3/dist-packages/pip/__init__.py", line 21, in <module>
  from pip._vendor.requests.packages.urllib3.exceptions import DependencyWarning
ModuleNotFoundError: No module named 'pip._vendor.requests'

which pip3およびpip3 --versionの出力:

# which pip3
/usr/bin/pip3

# pip3 --version
Traceback (most recent call last):
  File "/usr/bin/pip3", line 9, in <module>
    from pip import main
  File "/usr/lib/python3/dist-packages/pip/__init__.py", line 21, in <module>
    from pip._vendor.requests.packages.urllib3.exceptions import DependencyWarning
ModuleNotFoundError: No module named 'pip._vendor.requests'

追伸Python2 pipは正常に実行されます。 「which pip」および「pip --version」の出力:

# which pip
/usr/bin/pip

# pip --version
pip 1.5.4 from /usr/local/lib/python2.7/dist-packages/pip-1.5.4-py2.7.Egg (python 2.7)

pythonおよびpython3のインストール情報:

# which python
/usr/bin/python
# which python3
/usr/bin/python3

# python -V
Python 2.7.14
# python3 -V
Python 3.6.3  
7
mlpy

Pip3に問題があるため、削除して再インストールします。ターミナルを開き、次を入力します。

Sudo apt purge python3-pip  
Sudo rm -rf '/usr/lib/python3/dist-packages/pip'  
Sudo apt install python3-pip   
cd
cd .local/lib/python3/site-packages
Sudo rm -rf pip*  
cd
cd .local/lib/python3.5/site-packages
Sudo rm -rf pip*  
Sudo pip3 install xlwt
6
karel

Python3-pipパッケージをインストールすると、ファイル/ usr/bin/pip3にpythonスクリプトが作成されます。実行するには、main()関数をモジュールpip(from pip import main)からインポートする必要があります。このメソッドパスは、パッケージ化されたpipバージョン(私の場合は9.0.1)でのみ使用できます。

pip3 install --upgrade pipを実行すると、pipバージョンは18.1になり、main()はpip._internalに移動されました。

コマンドpython3 -m pip --versionを使用して、ケースが同じ状況に対応しているかどうかを確認します(/usr/bin/pip3が破損している場合、このメソッドでもpip3を使用できます)。

その場合、ファイル/ usr/bin/pip3で、9行目を置き換えます:from pip import mainfrom pip._internal import main

この問題は修正されます。 (Ubuntu 18.04ディストリビューションでテスト済み)

3
Vincent H.

これは私が役立ったものです:

  1. Sudo rm -rf /usr/local/lib/python3.5/dist-packages
  2. Sudo内でpip3を実行しないでください。
1
Jan Lachnitt

同じ問題がありましたが、opensslをインストールすると修正されました

0
getupandgo

最初に破損したpip3を削除します。

rm /user/bin/pip3 /user/local/bin/pip3

新しいものを再インストールします。

Sudo apt-get remove python3-pip
Sudo apt-get install python3-pip
0
邹若奇

@Vincent H.が言及したように、私は同じ問題に遭遇しました。

トレースバック(最後の最後の呼び出し):ファイル「/home/ashish/.local/bin/pip3」、7行目、pip._internal import main ImportErrorから:「pip._internal」という名前のモジュールはありません

この問題の修正は、pip._internalを実行して.local/bin/pip3Sudo gedit .local/bin/pip3pipに置き換えることでした。

0
TheLazy