尝试通过命令安装 Pip
我收到以下错误信息。
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
.....
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
另外,正如终端所述,尝试使用命令
sudo apt-get -f install
这给了我们这个回报
Correcting dependencies... failed.
The following packages have unmet dependencies:
.....
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
E: Unable to correct dependencies
正如一些帖子中所建议的那样,我尝试使用sudo apt-get install --fix-broken && sudo apt-get autoremove && sudo apt-get update && sudo apt-get install samba
但没有成功。我还尝试删除单个包,但这也失败了。我安装了 python 2.7 和 3.5.1。
我的python -V
回报Python 2.7.6
。
我的python3 -V
回报Python 3.5.1
。
我的apt-cache policy python python3
退货
python:
Installed: 3.5.1-1
Candidate: 3.5.1-1
Version table:
*** 3.5.1-1 0
100 /var/lib/dpkg/status
python3:
Installed: 3.4.0-0ubuntu2
Candidate: 3.4.0-0ubuntu2
Version table:
*** 3.4.0-0ubuntu2 0
100 /var/lib/dpkg/status
使用后sudo rm -rf /var/lib/apt/lists/* ; sudo apt-get update ; sudo add-apt-repository main; apt-cache policy python
python:
Installed: 3.5.1-1
Candidate: 3.5.1-1
Version table:
*** 3.5.1-1 0
100 /var/lib/dpkg/status
2.7.5-5ubuntu3 0
500 http://archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
提前致谢
答案1
您的apt-cache policy python
输出告诉我您无法python
从存储库安装正确的版本 (2.7.x)。由于 Python 位于存储库中main
,我们应该首先尝试(再次)激活该存储库并更新包列表:
sudo add-apt-repository main
sudo apt-get update
当你得到一个无效签名(BADSIG)错误,我们会彻底删除所有软件包列表并重新下载。此外,如果错误导致其无法正常工作,我们会尝试main
再次启用存储库。
sudo rm -rf /var/lib/apt/lists/*
sudo add-apt-repository main
sudo apt-get update
现在新的apt-cache policy python
输出显示服务器提供的正确版本,因此我们现在可以强制将我们的包降级python
到所需的版本:
sudo apt-get install python=2.7.5-5ubuntu3
然后,我们需要清理本地缓存的错误 3.5 版本,并清空整个包缓存:
sudo apt-get clean
然后我们让它尝试升级所有剩余的软件包并希望获得最好的结果:
sudo apt-get upgrade
答案2
基本步骤如下:
sudo apt-get update
现在软件包列表已更新,我们可以使用 apt-get upgrade 命令升级到最新版本:
sudo apt-get -y upgrade
软件包升级完成后,我们可以安装 Python 3.7。这可以通过 apt-get install 命令完成:
sudo apt-get install -y python3.7
安装完成后,我们通过调用Python 3.7并打印出版本号来确认安装成功:
python3.7 -V
# expected output
Python 3.7.3
现在我们已经成功完成了 Python 的安装。由于我们以后想要使用其他 Python 包,我们现在可以安装包管理程序 PIP。为此,我们执行以下命令:
sudo apt-get install -y python3-pip
接下来,我们确保 Python 3.7 是最新版的 python3。为了实现这一点,我们设置了指向 python3 的符号链接。
sudo ln -sf /usr/bin/python3.7 /usr/bin/python3
安装 PIP 后,我们必须更新 PIP。不幸的是,尽管我们刚刚安装了 PIP,但我们必须手动执行此操作,因为安装的版本很旧,所以是的,这一步是必要的:
python3 -m pip install --upgrade pip
安装完成后我们还可以通过调用PIP的版本号来确认这一点:
python3 -m pip -V
# expected output
pip 19.2.1 from /home/vagrant/.local/lib/python3.7/site-packages/pip (python 3.7)
现在我们仍在测试是否可以使用 PIP 安装库。为此,我们使用了一个非常流行的 Python 数学库,名为 numpy
python3 -m pip install numpy