<p>正如标题所示,我试图将类的属性作为同一类函数的参数传递。在下面的示例中,<code>print_top_n()</code>的功能默认是打印<code>self.topn</code>,但如果需要,也可以使用不同的值调用该函数。这是Python(或通用编程)犯规,还是有办法做到这一点?在</p>
<pre><code>>>> class Example():
def __init__(self, topn=5):
self.topn = topn
def print_top_n(self, n=self.topn):
print n
Traceback (most recent call last):
File "<pyshell#7>", line 1, in <module>
class Example():
File "<pyshell#7>", line 4, in Example
def print_top_n(self, n=self.topn):
NameError: name 'self' is not defined
</code></pre>