擅长:python、mysql、java
<h3>使用decorator在创建时将继承的类转换为对象</h3>
<p>我相信这样一个对象的概念并不是Python中典型的编码方式,但是如果必须这样做的话,下面用于立即初始化的装饰器<code>class_to_object</code>就可以做到了。初始化或任何参数都必须通过装饰对象传递:</p>
<pre><code>def class_to_object(*args):
def c2obj(cls):
return cls(*args)
return c2obj
</code></pre>
<p>使用这个装饰器</p>
^{pr2}$
<p>最终的结果是,您有一个与scala对象类似的对象<code>K</code>,并且名称空间中没有可用于初始化其他对象的类。在</p>
<p>注意:为了学究,对象K的类可以被检索为<code>K.__class__</code>,因此如果有人真的想初始化其他对象的话。在Python中,如果您真的想要的话,几乎总是有一种方法可以解决问题。在</p>