通过json文件管理嵌套参数
paramctl的Python项目详细描述
参数控制
基于json文件匹配位置参数的python库
当与脚本正确集成时,您应该能够触发如下操作:script.py action object extra_parameter_1 extra_parameter_n
它是如何工作的
您需要一个json文件来定义接受的操作和对象
json文件应该如下所示:
{"action1": { "object_a": { "help": "Description for what action1 does to object_a", "action": "the_name_of_your_function_for_action1_on_object_a" }, "object_b": { "help": "Description for what action1 does to object_b", "action": "the_name_of_your_function_for_action1_on_object_b" } }, "action2": { "object_a": { "help": "Description for what action2 does to object_a", "action": "the_name_of_your_function_for_action2_on_object_a" }, "object_y": { "help": "Description for what action2 does to object_y", "action": "the_name_of_your_function_for_action2_on_object_y" } } } }
在python代码(例如:myscript.py)中添加以下内容:
import paramctl
params = paramctl.ParameterMap("parametermap.json")
try:
print(globals()[function[0]](function[1:]))
except KeyError:
print("No function available like " + " ".join(function[:]))
,最后,创建在json上定义的函数(在“action”下),如下所示:
def get_nodes(*argv):
...
…并根据你的需要来管理这些论点。