通过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):
    ...

…并根据你的需要来管理这些论点。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
从log4j迁移到log4j2时发生java错误   java为什么我不能运行hello swing应用程序?   Java反射:按声明顺序获取字段和方法   java将日期设置为每周的第二天   在Java中使用包装器和随机森林分类器进行特征选择时出现weka错误   oop对随机生成的Java数字有问题   java使用PhoneNumberUtils检查联系人中是否存在号码。比较()   java无法在Tomcat 7(org.apache.catalina.LifecycleeException)上部署YouTrack   java无法添加自定义视图类   java如何从服务器端更改HttpServletRequest中的IP?   java GemFire 8.2.0集群使用缓存中的静态服务器列表。xml   运行google maps API v2约20分钟时出现java JNI错误   java在IntelliJ IDEA中创建一个可执行的jar