擅长:python、mysql、java
<p>一个显而易见的方法是:</p>
<pre><code>@classmethod
def from_dump_v(cls, dump):
return cls(**{k.replace('_', ''): v for k, v in dump.items()})
</code></pre>
<hr/>
<p>在<code>dump</code>dict持有任意键的情况下,我看不到一种明显的方法来做到这一点;我不是荷兰人。你知道吗</p>
<p>但是,通过对工厂函数的参数进行一些控制,可以将数据类型更改为序列而不是dict,然后使用<code>enumerate</code>执行一些明显的操作:</p>
<pre><code>@classmethod
def from_dump_v(cls, dump):
return cls(**{"param{}".format(i): x for i, x in enumerate(dump, 1)})
</code></pre>