feature request: a way to support nested dict input
还没有人认领这个 Issue。
评估
调研方向
首先追踪 Python Fire 的命令行参数解析和现有的 kwargs 处理;issue 未指定任何文件或测试。比较提议的 dotted-key 和 JSON 形式,然后确定应支持哪些输入形式以及由此产生的嵌套字典,再确定用于证明完成所需的测试。
由索引模型根据 Issue 内容生成。
描述
Background
Hi, I just come into a case that need to allow user to override some default value of a json configuration. The configuration is a nested dict and so is the input. I didn't find fire has good support for such case so here is a proposal.
Feature
Take this as an example
def my_command(config: dict):
...
I think fire may support such input to build the actual value of config
my_command --config.pos.x=20 --config.pos.y=10
# or
my_command --config.pos='{"x": 20, "y":10}'
# or
my_command --config='{"pos": {"x": 20, "y":10}}'
And both will end up with the following dict
{
"pos": { "x": 20, "y": 10}
}
The beauty of this design can avoid a lot of unecessary " and {} (and you need to pair them correctly) input of a JSON data. It's less error prone and comforable to use this style in command line. Currently I can handle this via kwargs, but I think it would be nice to have native support.
- 主要语言
- Python
- 星标
- 28.2k
- 派生
- 1.5k
- PR 合并指标
- 30 天内没有已合并 PR
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
google/python-fire 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 85/100
google/python-fire#693 ·
-
Release 0.7.2? 未关闭
难度 3/5 1-2 天 新手友好度 38/100
google/python-fire#698 ·
-
难度 3/5 1-2 天 新手友好度 58/100
google/python-fire#672 · 5 条评论 ·
-
难度 4/5 3-5 天 新手友好度 45/100
google/python-fire#665 · 2 条评论 ·
-
难度 4/5 3-5 天 新手友好度 55/100
google/python-fire#659 · 1 条评论 ·
查看 google/python-fire 的全部 Issue
相似的 Issue
-
bug
难度 2/5 1-3 小时 新手友好度 90/100
learningequality/ricecooker#747 ·
-
难度 2/5 1-3 小时 新手友好度 68/100
BSData/horus-heresy-3rd-edition#3171 ·
-
enhancement
难度 2/5 1-3 小时 新手友好度 72/100
-
难度 2/5 1-3 小时 新手友好度 76/100
run-llama/llama_index#23199 ·
-
难度 2/5 1-3 小时 新手友好度 84/100
KhronosGroup/glTF-Blender-IO#2769 ·