【发布时间】:2013-02-18 19:17:39
【问题描述】:
我有一个类定义如下
class M(object):
def __init__(self, **kwargs):
...do_something
我有argparse.parse_args()的结果,例如:
> args = parse_args()
> print args
Namespace(value=5, message='test', message_type='email', extra="blah", param="whatever")
我想传递这个命名空间的值(message_type 除外)来创建类M 的实例。我试过了
M(args)
但是出错了
TypeError: __init__() takes exactly 1 argument (2 given)
我不明白。我该怎么做
- 从
args的列表中删除值message_type - 传递值,就像我直接输入
M(value=5, message='test', extra="blah", param="whatever")一样。
【问题讨论】:
标签: python python-2.7 arguments argparse