python:将一个函数设置为与另一个函数使用相同的参数
我有一个类,其成员是另一个类的列表。所以我想要像这样的东西python:将一个函数设置为与另一个函数使用相同的参数,python,Python,我有一个类,其成员是另一个类的列表。所以我想要像这样的东西 class primary_class: def __init__(self): self.slist = [] def add_secondary_class(self, <arguments>): self.slist.append(secondary_class(<arguments>)) class-primary\u class: 定义初始化(自): s
class primary_class:
def __init__(self):
self.slist = []
def add_secondary_class(self, <arguments>):
self.slist.append(secondary_class(<arguments>))
class-primary\u class:
定义初始化(自):
self.slist=[]
def添加辅助类(自身):
self.slist.append(secondary_class())
基本上,我希望能够以完全相同的方式将add_secondary_类参数传递给secondary_类构造函数
def add_secondary_class(self, *args):
self.slist.append(secondary_class(*args))
或者,如果你有kwargs
def add_secondary_class(self, **kwargs):
self.slist.append(secondary_class(**kwargs))
*args
和**kwargs
是一个不错的选择。你真的试过吗?另外,*args
和**kwargs
在这里非常有用。唉,这不行。使用**kwargs
,我最终得到了类型错误:add_secondary_class()正好接受一个参数(给定8个)
您如何调用函数add_secondary_class()
?a=primary_class();a、 使用kwargs
(关键字参数)添加_secondary_class()
,您需要这样调用它们foo(bar=5,bar2='param2',bar3=[])
,即使用关键字woops。忽略了我添加了一些没有关键字的和一些有关键字的def add_secondary_class(self、*args、**kwargs):
。谢谢