数量我在我的代码的结构如下:减少参数的函数发生在蟒蛇
#!/usr/bin/env python
import <something>
.
.
.
from modules import *
from optparse import OptionParser
class Main:
def __init__(self):
parser = self.get_argument()
self.set_argument(parser)
def my_args(self):
parser = OptionParser(usage='usage: %prog [options]', version='%prog 1.0.0')
parser.add_option('-t', '--test', action='store_true', dest='test', default=False,
help='Help of test.')
.
.
.
return parser
def set_args(self, parser)
options, args = parser.parse_args()
params = dict(test=options.test, ..., arg100=options.arg100)
self.start(**params)
def start(self, **params):
print params
def ...:
...
.
.
.
if __name__ == '__main__':
Main()
我想运行开始为越来越参数和值使用其他功能。但:
TypeError: start() takes exactly 2 arguments (1 given)
如何使用kwargs传递它们?
什么是使用start
中的参数的最佳方法。 我真的很新kwargs
。
你是如何调用'开始()'方法?如果我使用上面写的'start()'方法,它不会出错,只是打印出一个空字典。 –
赦免,是的。你是对的。我如何使用kwargs来传递它们? – MLSC
开始是定义采取kwargs或关键字参数,因为你把**放在params前面,然后在set_args中定义参数,但是你通过了测试,甚至没有声明,你也没有传递任何关键字参数。我不知道你是否在另一个地方声明了另一个'test'。您可能想要解决这些问题。 –