我试图让一些 args 在一个类中工作,我已经让它在一个函数中运行,来自How to use *args in a function? .
我正在尝试将该函数放入一个类中,但我似乎不明白如何初始化具有采用 *args的init函数的类。代码如下:
class classname(object):
def __init__(self, *args):
<code-snip>
...
</code-snip>
if __name__ == "__main__":
start = classname()
start()
所以在这里我对如何处理'start()'感到困惑。我必须使用'start(*sys.argv[1:])'还是'start()'。两者似乎都不起作用。我想得到init中预期的 *args被正确传递。
请任何指点。
万分感谢..
======
如果我不清楚详细说明它是如何不起作用的,我很抱歉。
a) 在使用 start(*sys.argv[1:]) 时
Traceback (most recent call last):
File "check.py", line 126, in <module>
start(*sys.argv[1:])
TypeError: 'check' object is not callable
b) 在使用 start() 时,我得到:
Traceback (most recent call last):
File "check.py", line 126, in <module>
start()
TypeError: 'check' object is not callable
这些是出现的错误。
@alko,是的,你是对的。我正在寻找如何让init中的 *args正确传递。