omegaconf - 从命令行扩展 omegaconf 中的列表
问题描述
我有一个来自 yaml 文件的类似配置
training_variables:
- var1
- var2
我想使用一个额外的变量来扩展列表,我想从命令行来做。怎么做?这似乎不可能,但我认为如果您想尝试新设置而不每次都更改配置文件,它会非常有用。我想知道这样的事情:
train.py training_variables=$training_variables+['var3']
解决方案
这不受支持,也不计划以您请求的形式提供支持。
一个实用的解决方案是将列表拆分为两个变量并在代码中连接它们。
base_list:
- a
- b
extra_list: []
火车.py:
...
combined_list = cfg.base_list + cfg.extra_list
...
$ python train.py 'extra_list=[c,d,e]'
我不能 100% 确定上述命令行是否可以直接与使用 OmegaConf 的应用程序一起使用,但它应该可以与 Hydra 1.0 或更高版本一起使用。
推荐阅读
- python - 如何获得字符保持相同顺序的部分编码字符串的所有可能组合?
- javascript - 在 TypeScript 中实现装饰器模式
- cookies - Graphql Apollo 设置 cookie 不起作用
- reactjs - Material Popover 可滚动内容
- git - 为什么我不能在 IntelliJ 中删除本地 Git 分支?
- python - 你如何观察可调用对象的参数和返回值?
- css - Slick Slider 覆盖了下面的元素
- c - 在 C 中使用矩阵绘图
- vb.net - 是否可以将 TryCatch 集成到 Lambda 表达式中?
- awk - Csh 将变量作为列表获取