[英]Kedro: How to pass “list” parameters from command line?
默認情況下, kedro
命令行不會對更簡單的數字類型之外的參數進行類型轉換。 更復雜的參數應該通過parameters.yml
文件來處理。
也就是說,如果你真的想這樣做,你可以修改你的kedro_cli.py
來支持它。 具體來說,您需要修改文件中的_split_params
回調 function。 這里最簡單的事情可能是更改讀取的行
result[key] = _try_convert_to_numeric(value)
它處理將簡單的數字類型解析為
result[key] = json.loads(value)
使其解析更廣泛的類型。 也就是說,將您傳入的 CLI 參數解析為json
(因此您還需要注意引號並確保傳入有效的json
語法。
如果這不起作用,您可以嘗試添加自己的語法並在 function 中解析它。 但是,我的建議是避免依賴 CLI 中脆弱的字符串參數評估,而是使用parameters.yml
。
除了 Zain 的回答之外,還可以使用CLI config指定額外的參數。 config.yml
看起來像這樣:
run:
params:
keys: [value1]
但再次強調:我們強烈建議不要在額外的 CLI arguments 中添加復雜結構。 建議的方法是為此使用配置環境。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.