繁体   English   中英

使用 `pip` 安装特定软件包版本时的双引号或单引号

[英]Double or single quotes when installing specific package versions with `pip`

Python 文档特别提到在安装特定软件包版本时应使用双引号和 pip

当使用比较器操作符,如 >、< 或其他一些由 shell 解释的特殊字符时,包名和版本应该用双引号括起来:

 python -m pip install SomePackage==1.0.4 # specific version python -m pip install "SomePackage>=1.0.4" # minimum version

这对我来说是出乎意料的,因为大多数 Unix shell 在双引号内扩展变量而不是单引号,我希望我们希望字符串按字面意思传递给 pip 而不会发生任何可能的 shell 扩展。

我主要看到 pip 与单引号“在野外”一起使用,对此答案的第二条评论让我认为这是一个 Windows 兼容性问题。 这是正确的还是在 Unix shell(如 Bash 和 Zsh)中使用双引号和 pip 有什么好处?

在 Unix shell(如 Bash 和 Zsh)中使用双引号和 pip 有什么好处吗?

假设重点是严格确保参数的(其他)字符都被视为普通字符,不,双引号在 Bourne 家族 shell(如 Bash 和 Zsh)中的使用严格比单引号差。 然而,在实践中,我认为差异实际上与pip接受的任何包规范无关。

请注意,至少在 Unixen(如 Linux 和 Mac)上, pip仅从人们期望提供的命令行参数的角度考虑。 执行的命令(pip )只看到命令行处理的结果,包括引号删除。 它不知道使用了哪种引用(如果有的话)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM