读取hydra中以"oc.env"作为整数解析的变量



在我的项目中,我使用python dotenv设置环境变量。然后,我使用co.envOmegaConf解析器在我的YAML中引用它。

# config.yaml
var1: 42
var2: ${oc.env:PROJECT_NUMBER}
# .env
PROJECT_NUMBER=99

然而,一旦我运行了脚本,变量似乎总是被解析为字符串:

# content of config 
{'var1': 42, 'var2': '99'}

据我所知,这是oc.envenv解析器的预期行为,它会猜测基元类型正在被弃用
如何确保var2被读取为整数
提前谢谢。

您可以使用oc.decode进行解码,将其作为数字。

类似于:

var1: 42
var2: ${oc.decode:${oc.env:PROJECT_NUMBER}}

相关内容

  • 没有找到相关文章

最新更新