UbuntuでPython3 pip3インストールが壊れている


14

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'

PS 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  

投稿で16.04と言いましたが、14.04タグを使用しました。どのバージョンが正しいですか?
edwinksl 2017年

1
16.04は正しいです。たった今、16.04タグが見つかりませんでした。ごめんなさい。
mlpy

回答:


12

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*  
python3 -m pip install --user xlwt

3
私は試しましたが、それでも同じエラー:imgur.com/a/nAdqU
mlpy

私は新しい解決策を試しましたが、それでも同じエラーが発生しました。
mlpy 2017年

私も同じ問題を抱えています。私が行うときsudo apt install python3-pip、私は次のエラーを取得する:The following packages have unmet dependencies: python3-pip : Depends: python-pip-whl (= 8.1.1-2) but 8.1.1-2ubuntu0.4 is to be installed Recommends: build-essential but it is not going to be installed Recommends: python3-dev (>= 3.2) but it is not going to be installed Recommends: python3-wheel but it is not going to be installed E: Unable to correct problems, you have held broken packages.
Kristada673

@ Kristada673この質問への回答を読んでみてください:askubuntu.com/questions/363200/…。DragonLordの答えは私のために働いた。
カレル2018

6

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を使用して、ケースが同じ状況に対応しているかどうかを確認します(pip3は、/usr/bin/pip3が壊れているときにこのメソッドでも使用できます)。

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

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


インポートを変更した後、別のエラーが表示されますFile "/usr/bin/pip3", line 11, in <module> sys.exit(main()) TypeError: 'module' object is not callable
Miranda

2

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

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

それで問題が解決するかもしれませんが、答えを広げていただけませんか?(多分についての警告を追加し、このディレクトリを削除するには、なぜpython3.5パス)、なぜ..上ので、sudoでそれを実行していない、とする決して
ロバートRiedlの

私はこれについてはあまり専門家ではありません-私のために働いたものを共有したかっただけです。
Jan Lachnitt


1

まず、破損した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._internalpip.local/bin/pip3行うことでsudo gedit .local/bin/pip3


0

これは問題ですが、解決できます。

rm /user/bin/pip3 /user/local/bin/pip
sudo apt-get remove python-pip

再インストールするより

sudo apt-get install python-pip
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.