我的python类出了什么问题?

时间:2014-06-26 13:52:19

标签: python class

有谁能告诉我我的课程代码有什么问题?当我执行它时,程序只会弹出"缩进错误:unindent与任何外部缩进级别都不匹配"

以下是我的代码:

class Student:

    totalStudents = 0

    def __init__(self, name, year):

        self.name = name

        self.year = 0

        self.grade = []

        self.attend = 0

        print("Add {0} to the classroom".format(self.name) )

        Student.totalStudents += 1

    def addGrade(self, grade):

        self.grade.append(grade)

    def attendDay(self):

        self.attend += 1

    def classAverage(self, grade):

        return sum(self.grade) / len(self.grade)

    def __str__(self, name, grade):

        return "{0} is a {1} grader studnet".format(self.name, self.year)

2 个答案:

答案 0 :(得分:2)

使用Python编程时,您应该注意;

  • 不要使用TAB字符

  • 确保您的编辑器将您的TAB字符转换为空格字符

答案 1 :(得分:2)

当我在问题的当前编辑中运行时,此代码有效 - 问题由@KillianDS编辑,我认为他/她通过修复格式无意中修复了问题。 / p>

查看原始编辑,问题似乎出现在class Student:之后的第一行。行totalStudents = 0缩进了2个级别,而它之前的行(class Student:)根本没有缩进。编辑:您还混合制表符和空格,这会导致问题。

您的格式应如下所示:

(注意:使用4个空格,而不是制表符!您应该调整文本编辑器,以便在按Tab键时使用空格而不是制表符。)

class Student:
    totalStudents = 0

    def __init__(self, name, year):
        self.name = name
        self.year = 0
        self.grade = []
        self.attend = 0
        print("Add {0} to the classroom".format(self.name) )
        Student.totalStudents += 1