遵循argparser语法的集成参数/配置文件解析器
ConfArgParse的Python项目详细描述
此模块向argparse添加配置文件解析功能。
用法
首先导入模块并初始化解析器:
import confargparse parser = confargparse.ConfArgParser()
用法与argparse模块相同:
parser.add_argument("-n", type=int) group = parser.add_argument_group("my group") group.add_argument("-g")
现在,使用配置文件(或顺序读取配置的列表 文件),只需添加–conf文件选项。
python prog.py –conf-file conf.ini
通过应用 想要,然后添加–export conf file选项。
python prog.py -n –export-conf-file > conf.ini
API更改
所有argparse代码都应该通过在新对象中拖动而兼容。这个 package向api添加了几个重要选项,以确定如何映射 命名空间dest到配置节/名称。
需要注意的关键概念:
- 配置文件中的参数映射到特定的节/名称对。
- 配置文件节和名称忽略大小写。
指定名称
默认情况下,所有配置名称都是argparse中的小写dest。关心 必须确保dest与 不同的资本化。
使用“name”关键字添加参数可以更改默认名称:
parser.add_argument("-n", type=int, name="my_n")
这将配置文件中的参数指向“my_n”而不是“n”。
指定节
默认情况下,所有配置都转到[默认值]部分。论据 组和子parser从初始化它们的解析器继承。
add_argument_group、add_argument、add_subparsers和confargparser 初始化全部包括“section”可选关键字参数。指定 此部分设置配置中选项将针对的部分 到。如果值为none,则对象将按预期向上继承:
parser = ConfArgParser(section = "main") parser.add_argument("-n", type=int) group = parser.add_argument_group("my group", section="group") group.add_argument("-g") group.add_argument("-t", section="section2")
在本例中,第一个参数针对[main]部分中的“n”名称。 第二个参数针对[组]部分中的“g”名称。第三个 参数以[Section2]节中的“T”名称为目标。
排除参数
当前,位置参数无法发送到配置文件。
如果要排除其他参数,只需使用exclude关键字 添加参数的参数:
parser.add_argument("-n", type=int, exclude=True)
建议还是错误修复?
请随时与我联系。我可以通过谷歌搜索在线找到: 乔舒亚·斯威迈达斯。
请将错误修复作为请求发送到BitBucket存储库 (https://bitbucket.org/swamidass/confargparse)。请继续拉 请求干净,这样我就可以很容易地知道是否应该 并入主线。