pypi依赖项中的“额外”是什么?

所有的意见:

requires_distpypi的json响应中,给出:

requires_dist : [
    "bcrypt; extra == 'bcrypt'",
    "argon2-cffi (>=16.1.0); extra == 'argon2'"
]

谁能说清楚每个相关的第二份声明,extra == 'bcrypt'extra == 'argon2'

马丁·彼得斯(Martijn Pieters):

如果您明确要求常规功能,则除了常规依赖关系外,还可以安装其他依赖项。将它们视为可选功能。

您可以使用包名称后面的名称来安装它们==例如,如果您要安装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_specs 添加到要安装的东西列表上。

请参阅Python打包用户指南的“ 安装软件包”部分中的“安装Setuptools“其他”

由安装的软件包本身来检测是否安装了可选附加功能的所有依赖项。一种常见的模式是使用try...except ImportError:防护来测试可用的此类额外依赖项。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

android中的依赖项是什么?

Kotlin Gradle依赖项中的“实现”是什么?

Android上的Gradle中的默认依赖项范围是什么?

依赖项配置中“ext:'jar'”的目的是什么?

是什么导致AngularJS指令中的依赖项注入失败?

autofac依赖项注入中InstancePerOwned的正确用法是什么

Mixfile依赖项中的“ runtime:false”是什么意思?

当依赖项不公开接口时,在GO中模拟依赖项的最佳方法是什么

Apache Ignite:IgniteHadoopIgfsSecondaryFileSystem的依赖项是什么?

为什么堆栈不使用定义的额外依赖项?

Collada中的节点额外技术是什么?

IntelliJ IDEA + Maven在iml文件中对依赖项的需求是什么?

project.json中两个依赖项部分之间的区别是什么

deb 文件或 apt 中的依赖项要求末尾的波浪号 (~) 是什么意思?

当POM文件中的依赖项版本为红色时,这是什么意思?

在Meson中添加本地依赖项(openCV)的正确方法是什么?

在package.json中为react组件添加依赖项以做出反应的正确方法是什么

Ruby gem依赖项中的tilde-greater-than(〜>)是什么意思?

在Golang中锁定外部依赖项“版本”的最有效方法是什么?

package.json依赖项中的“ next”到底是什么意思?

Volley库的编译依赖项的替代方法是什么-在Android中

gradle 中的“$”符号究竟是什么用于依赖项?

并非来自pypi的pip安装包,其名称与pypi中的名称相同(+带有pypi的依赖项)

依赖项反转原理是什么,为什么重要?

在Cargo中指定依赖项版本的语法是什么?

Java Gradle API的Maven依赖项参数是什么?

“未使用的直接依赖项”是什么意思?

延迟安装依赖项是什么意思

yum的“更新依赖项”是什么意思?