擅长:python、mysql、java
<p>如果需要访问函数的内部状态,那么最好使用类。通过使类实例成为可调用的函数,可以使其像函数一样工作,这是通过定义<code>__call__</code>:</p>
<pre><code>class StatefulFunction( object ):
def __init__( self ):
self.public_value = 'foo'
def __call__( self ):
return self.public_value
>> f = StatefulFunction()
>> f()
`foo`
>> f.public_value = 'bar'
>> f()
`bar`
</code></pre>