擅长:python、mysql、java
<p>在第一个示例中,您尝试调用<code>grades()</code>,它是<code>Quizzes</code>类的成员函数。成员函数期望实例作为第一个参数,或者在点(<code>the_instance.grades()</code>)之前,或者作为(不太常见的)显式参数(<code>grades(the_instance)</code>)。两者都不提供,因此Python会抱怨。你知道吗</p>
<p>在您的第二个示例中,不清楚在定义类之后您实际做了什么。你知道吗</p>
<p>一般来说,这两门课与练习没有太大关系,可以通过以下方法解决:</p>
<pre><code>class quizzes(object):
def __init__(self, grades = None):
if grades is None:
self.grades = [0]*6
else:
self.grades = grades[:6]
</code></pre>
<p>顺便说一句:不建议使用可变对象作为默认参数,因为该对象在所有调用之间是共享的。你知道吗</p>