在我的项目中,我使用python dotenv设置环境变量。然后,我使用co.env
OmegaConf解析器在我的YAML中引用它。
# config.yaml
var1: 42
var2: ${oc.env:PROJECT_NUMBER}
# .env
PROJECT_NUMBER=99
然而,一旦我运行了脚本,变量似乎总是被解析为字符串:
# content of config
{'var1': 42, 'var2': '99'}
据我所知,这是oc.env
和env
解析器的预期行为,它会猜测基元类型正在被弃用
如何确保var2
被读取为整数
提前谢谢。
您可以使用oc.decode进行解码,将其作为数字。
类似于:
var1: 42
var2: ${oc.decode:${oc.env:PROJECT_NUMBER}}