安装python包时,如果指定包的版本,为什么用到的是两个等号,而不是一个等号?-Python实用宝典

安装python包时,如果指定包的版本,为什么用到的是两个等号,而不是一个等号?

用anaconda创建虚拟环境时,会用到conda create -n env-name python=3.6,其中-n是什么意思,如果是参数的话,为什么不是--n,还有就是为什么python=3.6是一个等于号,而在安装包时,比如pip install pymysql==0.7时,用到的是两个等于号。

Anaconda中的命令有两种参数类型,一种是简写,比如题主说到的 -n,还有一种是全称 --name,即-n对应的全称。

pip的==是版本匹配运算符,是PEP 440定义的,见这个文档:PEP 440 - 版本标识和依赖性规范

至于conda的create指定版本的时候用Python = 3.5而不是Python == 3.5,个人猜测是第一个包含“模糊”版本,而第二个包含精确版本。模糊版本将匹配版本> = 3.5和<3.6中的Python包。而==将匹配Python包如3.5,3.5.0,3.5.0.0等这样的精确版本。确实没必要细化到那么细的版本号。

本文由 Python实用宝典 作者:Python实用宝典 发表,其版权均为 Python实用宝典 所有,文章内容系作者个人观点,不代表 Python实用宝典 对观点赞同或支持。如需转载,请注明文章来源。
0

发表评论