pip install 参数完全解析 pip install -u 是升级安装

参考:
https://blog.csdn.net/tsq292978891/article/details/111460944

https://pip.pypa.io/en/stable/installation/

pip install 的一些命令

pip install -u 是升级安装
pip install --user 是安装在本用户的目录下
# 这样会将Python 程序包安装到 $HOME/.local 路径下,其中包含三个字文件夹:bin,lib 和 share。

pip install -r <file>
Install from the given requirements file. This option can be used multiple times. 从给定的需求文件安装。 此选项可以多次使用。(可以嵌套使用)

pip install -i <url> or pip install --index-url <url>
指定从某个源安装包,比如pip install xxx -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
Python软件包索引的基本URL(默认为https://pypi.org/simple)。 这应指向符合PEP 503(简单存储库API)的存储库或以相同格式布置的本地目录。(软件包存放的URL地址,需要符合PEP 503协议)


pip install --extra-index-url <url>

--trusted-host <hostname> 
比如:--trusted-host	mirrors.aliyun.com,将某个host或者host:port标记为可信赖的,即使它没有有效的HTTPS或任何HTTPS。



pip install --pre 
Include pre-release and development versions. By default, pip only finds stable versions. 查找预发行和正在开发的版本,默认情况下,pip仅查找稳定版本。

# 一个使用例子
pip install --pre xxxx --user -i http://pypi.xxx.cc/hobot-local/simple --extra-index-url=http://mirrors.aliyun.com/pypi/simple/ --trusted-host pypi.xxx.cc --trusted-host mirrors.aliyun.com


### Pip 命令中 `install -U` 和 `-u` 参数详解 PipPython 的包管理工具,用于安装、管理和更新第三方库。以下是关于 `pip install -U` 和 `-u` 参数的详细解释。 --- #### 1. `pip install -U` 参数含义 `-U` 是 `--upgrade` 的缩写,表示升级指定的包到最新版本[^1]。 当执行 `pip install -U package_name` 时,Pip 会检查 PyPI(Python Package Index)或其他配置的索引源,寻找目标包的最新可用版本,并将其下载和安装。如果已经存在旧版本,则会先卸载旧版本再安装新版本。 **示例:** ```bash pip install -U requests ``` 这条命令的作用是将 `requests` 包升级到最新稳定版[^1]。 需要注意的是,`-U` 参数不仅会影响目标包本身,还会尝试升级其依赖项,除非显式禁用了依赖解决功能。 --- #### 2. `pip install -u` 参数含义 `-u` 是 `--upgrade-strategy` 的一种快捷选项,控制依赖包的升级策略[^4]。它的作用范围仅限于依赖项,而不直接影响主包的安装行为。 Pip 提供两种升级策略: - **eager**: 默认策略,表示在安装升级主包时,也会同步升级所有依赖项到兼容的最新版本。 - **only-if-needed**: 更保守的策略,只有当依赖项的现有版本不满足主包要求时才会进行升级。 通过 `-u` 参数可以覆盖全局配置,默认情况下启用的是 `eager` 策略。如果没有特殊需求,一般无需手动指定此参数。 **示例:** ```bash pip install --upgrade-strategy only-if-needed some_package ``` 等价于: ```bash pip install -u only-if-needed some_package ``` 这里的 `-u` 明确指定了只在必要时才升级依赖项[^4]。 --- #### 3. 结合使用的场景说明 虽然 `-U` 和 `-u` 都涉及升级操作,但它们的关注点不同: - `-U` 负责主包本身的升级- `-u` 则专注于调节依赖项的升级逻辑。 例如,假设有一个名为 `example-package` 的包及其多个依赖项,下面两条命令的行为有所区别: **命令一:** ```bash pip install -U example-package ``` 这会尽力将 `example-package` 及其所有依赖项都升级到最新的兼容版本。 **命令二:** ```bash pip install -U --upgrade-strategy only-if-needed example-package ``` 或者: ```bash pip install -U -u only-if-needed example-package ``` 这种组合只会升级那些不符合最低版本要求的依赖项,从而减少不必要的变动风险。 --- #### 4. 注意事项 - 如果希望完全冻结环境中的依赖树,避免任何意外升级,建议配合 `requirements.txt` 文件使用锁定版本号的方式。 - 对生产环境的操作应格外谨慎,尤其是大规模升级可能引发兼容性问题。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值