擅长:python、mysql、java
<blockquote>
<p>Why would you want to pass the definition for a method through another method?</p>
</blockquote>
<p>因为你想修改它的行为。在</p>
<blockquote>
<p>And how would that even work?</p>
</blockquote>
<p>很好,因为函数在Python中是一流的。在</p>
<pre><code>def decorator(f):
def wrapper(*args, **kwargs):
print 'Before!'
res = f(*args, **kwargs)
print 'After!'
return res
return wrapper
def somemethod():
print 'During...'
somemethod = decorator(somemethod)
somemethod()
</code></pre>