在requires_dist
pypi的json响应中,给出:
requires_dist : [
"bcrypt; extra == 'bcrypt'",
"argon2-cffi (>=16.1.0); extra == 'argon2'"
]
谁能说清楚每个相关的第二份声明,extra == 'bcrypt'
和extra == 'argon2'
?
如果您明确要求常规功能,则除了常规依赖关系外,还可以安装其他依赖项。将它们视为可选功能。
您可以使用包名称后面的名称来安装它们==
。例如,如果您要安装somepackage
并想要添加bcrypt
可选功能,请使用:
pip install somepackage[bcrypt]
要么
pip install somepackage[argon2]
或者,要同时包含两个可选的附加功能,请用逗号分隔名称:
pip install somepackage[bcrypt,argon2]
尽管somepackage[...]
多次使用也pip
很聪明,足以知道已经安装了主软件包。
pip
(或其他任何软件包安装工具)将列出的名称映射<packagename>[<extras_name>(,...)]
到requires_dict
使用该<dependency_spec>; extra == '<extras_name>'
格式的条目中,将dependency_spec
s 添加到要安装的东西列表上。
请参阅《Python打包用户指南》的“ 安装软件包”部分中的“安装Setuptools“其他”。
由安装的软件包本身来检测是否安装了可选附加功能的所有依赖项。一种常见的模式是使用try...except ImportError:
防护来测试可用的此类额外依赖项。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句