擅长:python、mysql、java
<p>我不明白。似乎重新分配<code>__class__</code>使我不必复制所有内容,这很好,因为我们讨论的是大量(100个MiB)的数据。在</p>
<p>(我在这里回答我自己的问题,以便我可以包括代码)</p>
<p>这怎么了?实际上,“x”和“y”可能代表大量数据。打电话mypa.do.公司(1) 将mypa提升为pai类成员:</p>
<pre><code>class pa(object):
def __init__(self):
self.x = 1.0
def do(self,i):
if i==1:
self.__class__ = pai
self.promote()
class pai(pa):
def __init__(self):
pa.__init__(self)
self.promote()
def promote(self):
self.y = 2.0
</code></pre>