python - python3 pip 无法安装任何包也无法更新 pip ubuntu
问题描述
我试过了
sudo apt-get install python3
sudo apt-get install idle
sudo apt-get install python3-pip
然后我尝试用 pip 安装模块,我尝试了几个非工作。
pip install send2trash
Collecting send2trash
Downloading https://files.pythonhosted.org/packages/13/2e/ea40de0304bb1dc4eb309de90aeec39871b9b7c4bd30f1a3cdcb3496f5c0/Send2Trash-1.5.0.tar.gz
Building wheels for collected packages: send2trash
Running setup.py bdist_wheel for send2trash ... done
Stored in directory: /home/joe/.cache/pip/wheels/f1/ca/e5/bdd5eae705cf50a483257e6ff9dd34911dda3570f0e1340dda
Successfully built send2trash
Installing collected packages: send2trash
Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: '/usr/local/lib/python2.7/dist-packages/Send2Trash-1.5.0.dist-info'
Consider using the `--user` option or check the permissions.
You are using pip version 10.0.1, however version 18.0 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
所以我尝试升级 pip ...
sudo pip install --upgrade pip
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
显然,我的电脑上有一些旧的 python 2.7。我没有使用它。如果解决方案涉及卸载它,我可以。提前致谢。
当我阅读一些说明时,也只是尝试了 sudo pip3 。这就是我现在得到的...
sudo pip3 install beautifulSoup
[sudo] password for joe:
The directory '/home/joe/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/joe/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting beautifulSoup
Downloading https://files.pythonhosted.org/packages/1e/ee/295988deca1a5a7accd783d0dfe14524867e31abb05b6c0eeceee49c759d/BeautifulSoup-3.2.1.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-build-p5xsk9e4/beautifulSoup/setup.py", line 22
print "Unit tests have failed!"
^
SyntaxError: Missing parentheses in call to 'print'
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-p5xsk9e4/beautifulSoup/
You are using pip version 8.1.1, however version 18.0 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
消息说 /home/joe/.cache/pip/http 不属于当前用户。那不是真的。我的电脑对我撒谎。一路走来,这条路归我所有,用户 joe。
这里是用 sudo pip 运行的...
sudo pip install beautifulSoup
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
我跑...
sudo python3 -m pip install --upgrade pip
The directory '/home/joe/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/joe/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting pip
Downloading https://files.pythonhosted.org/packages/5f/25/e52d3f31441505a5f3af41213346e5b6c221c9e086a166f3703d2ddaf940/pip-18.0-py2.py3-none-any.whl (1.3MB)
100% |████████████████████████████████| 1.3MB 553kB/s
Installing collected packages: pip
Found existing installation: pip 8.1.1
Not uninstalling pip at /usr/lib/python3/dist-packages, outside environment /usr
Successfully installed pip-8.1.1
You are using pip version 8.1.1, however version 18.0 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
这似乎奏效了。但后来我跑了 sudo pip3 和 sudo pip ...
sudo pip3 install beautifulSoup
Traceback (most recent call last):
File "/usr/local/bin/pip3", line 7, in <module>
from pip._internal import main
ImportError: No module named 'pip._internal'
sudo pip install beautifulSoup
Traceback (most recent call last):
File "/usr/local/bin/pip", line 7, in <module>
from pip._internal import main
ImportError: No module named 'pip._internal'
解决方案
好的,首先让我们修复您的 Pip 安装:
sudo apt-get install --reinstall python3-pip
现在您应该能够运行pip3 --version
以检查 Pip 是否已安装并正常工作。如果没有,请在您尝试其他任何操作之前告诉我。
需要注意的关键点:
- 在 virtualenv 之外运行 Pip 时,您需要使用
pip3
,否则您的系统将尝试使用 Python 2 的 Pip。 - 如果您需要以 root 身份运行 Pip,最好使用
sudo -H
而不是仅仅使用sudo
- 这将修复有关The directory ... is not owned by the current user
.
如果你想安装 Pip 18,我建议在 virtualenv 中安装——升级系统 Pip 充满了可能出错的地方。
例如:
# Create a new virtualenv:
python3 -m venv my_virtual_environment
# "Activate" it (you need to do this once per shell)
source my_virtual_environment/bin/activate
# Now you can use `pip`, `python` etc. and the changes will be kept in the `my_virtual_environment` directory
pip install -U pip setuptools wheel
此外,要安装 BeautifulSoup,你需要这个beautifulsoup4
包——beautifulSoup
它是旧的并且不能与 Python 3 一起工作:
pip install beautifulsoup4
推荐阅读
- kdb - 如何计算 KDB 中的对数?
- go - 如何从 opentracingsSpan 获取操作名称?
- python - Pandas:使用 iterrows 应用更改
- ruby-on-rails - 尝试重新部署旧应用程序时出现 Heroku 错误
- amazon-s3 - 用于 S3 中 PARQUET 格式的 Kafka S3 源连接器
- python - 使插入的 Matplotlib 图具有正确的尺寸
- ios - iOS SiriKit:仅语音响应?
- node.js - Firebase 实时数据库简单选择查询极慢
- php - 无限期地在后端运行一段 php 代码,并且没有来自前端的任何请求
- html - wordpress html和css中的响应式图像