擅长:python、mysql、java
<p>似乎您正在创建一个工厂函数来处理类初始化。因此,要实现这一点,可以使用<code>*args</code>和<code>**kwargs</code>将任意数量的参数(参数和关键字参数)传递给工厂函数。但这似乎是多余的。你知道吗</p>
<p>因此,您可以有如下内容:</p>
<pre><code>class Foo(object):
def __init__(self, param1, param2, param3=None):
self.param1 = param1
self.param2 = param2
self.param3 = param3
@classmethod
def from_dump_vx(cls, *args, **kwargs):
return cls(*args, **kwargs)
</code></pre>
<p>在<code>from_dump_vx</code>中,您可以根据自己的偏好处理<code>*args</code>和<code>**kwargs</code>中的值,然后将它们传递给类的<code>__init__</code>方法。你知道吗</p>
<p>然后你可以像这样初始化你的类:</p>
<pre><code>y = Foo.from_dump_vx(1, 2, param3=3)
</code></pre>