要交互测试我的Python脚本,我想创建一个Namespace
对象,类似于argparse.parse_args()
将返回的对象。 最显而易见的方法,如何创建一个Python名称空间(argparse.parse_args值)?
>>> import argparse
>>> parser = argparse.ArgumentParser()
>>> parser.parse_args()
Namespace()
>>> parser.parse_args("-a")
usage: [-h]
: error: unrecognized arguments: - a
Process Python exited abnormally with code 2
可能导致在Python REPL上的傻错误退出(如上)。
那么,什么是最简单的方法创建一个给定的一组属性的Python名称空间?
例如,我可以动态创建(dict([("a",1),("b","c")])
)一dict
但我不能把它作为一个Namespace
:
AttributeError: 'dict' object has no attribute 'a'
前者简单的类实际上是types.SimpleNamespace:看到的是https://文档.python.org的/ dev /库/ types.html#types.SimpleNamespace。 – Ofer 2017-07-11 15:00:33