Python:打印所有argparse参数,包括默认值

时间:2016-10-11 13:17:58

标签: python logging namespaces argparse sys

我想记录使用argparse模块的python程序的用法。目前,记录器记录的命令行使用情况与this post中给出的答案类似。但是,这仅提供命令行参数,并且不包括稍后在argparse中设置的默认值(毕竟这是预期用途)。是否有一种简单的方法可以打印所有argparse选项,以创建包含默认值的漂亮,整洁的usage日志条目?

进入argparse命名空间以按名称获取每个参数并不困难,但我希望有人能够以简洁的方式提取所需的信息。

感谢任何方向!

1 个答案:

答案 0 :(得分:6)

我在应用程序中做了类似的事情,希望下面的代码片段能够满足您的需求。这是对vars的调用,它给了我一个关于所有参数的字典。

parser = argparse.ArgumentParser(description='Configure')
....
args = parser.parse_args()
......
options = vars(args)