擅长:python、mysql、java
<p>修饰语基本上是句法糖。这个:</p>
<pre><code>@argcheck((str))
def funcme(name):
</code></pre>
<p>与此相同:</p>
^{pr2}$
<p>现在您可以看到装饰器为什么要更改调用堆栈。在</p>
<p>我不知道如何在任意情况下解决这个问题,但是如果您事先知道一些关于decorator的信息,您也许可以补偿您的代码。您还可以查看<a href="http://docs.python.org/2/library/functools.html#functools.wraps" rel="nofollow">functools.wraps</a>,也许这会提供一些可能有帮助的线索。在</p>