pip install --upgrade --force-reinstall <package>
升级时,重新安装所有软件包,即使它们已经是最新的。
pip install -I <package>
pip install --ignore-installed <package>
忽略已安装的软件包(而是重新安装)。
您可能希望拥有所有三个选项:--upgrade
和 --force-reinstall
确保重新安装,而 --no-deps
避免重新安装依赖项。
$ sudo pip install --upgrade --no-deps --force-reinstall <packagename>
否则你可能会遇到 pip 开始重新编译 Numpy 或其他大包的问题。
sudo
对我来说至关重要。
--force-reinstall
时需要 --upgrade
?
sudo
运行为所有用户安装是有意义的。不要使用 --user
运行 sudo,因为这只会在 root
用户下安装软件包。
如果要重新安装 requirements.txt 文件中指定的软件包而不升级,那么只需重新安装 requirements.txt 文件中指定的特定版本:
pip install -r requirements.txt --ignore-installed
--upgrade --force-reinstall
似乎不会强制使用带有 pip-1.5 的 python2.7 重新安装
我不得不使用
--no-deps --ignore-installed
--force-reinstall
之外,您还必须指定 --upgrade
,否则它不会有任何效果。
如果您需要强制重新安装 pip 本身,您可以执行以下操作:
python -m pip install --upgrade --force-reinstall pip
sudo pip3 install --upgrade --force-reinstall --no-deps --no-cache-dir <package-name>==<package-version>
一些相关的答案:
Difference between pip install options "ignore-installed" and "force-reinstall"
如果您有一个包含大量软件包的文本文件,则需要添加 -r 标志
pip install --upgrade --no-deps --force-reinstall -r requirements.txt
using cached
只是意味着它使用在上次安装时缓存的源文件。要强制重新下载,请使用--no-cache-dir
标志。pip install -U
,简称。 (并且很少需要--force-reinstall
选项)--no-deps
以避免这种情况,如下面的 Finn 回答中所建议的那样。