我的代码存在问题。我目前正在学习Python,我们必须创建一个需要取名字,编号,mid的学生。学生的成绩和最终成绩。然后我们需要定义一个方法来显示学生的平均成绩。
class Student:
def __init__(self, name, num, mid, fin):
self.name = name
self.num = num
self.mid = mid
self.finale = fin
def ave_stu(self):
print((self.mid + self.fin)/2)
要添加学生,我会在同一页面中使用此内容:
if __name__ == '__main__':
stu1 = Student(Yann, 1, 67, 98)
stu2 = Student(Bob, 2, 42, 12)
在我写“Yann”和“Bob”的地方,PyCharm告诉我,我有一个未解决的参考。然后,当我运行代码时,我收到NameError:名称'Yann'未定义。 我试着只使用一个数字而且它有效。然后我试图把str(Yann)认为它是类型的错误,它仍然无法正常工作。 所以这是我的问题,是类型的错误,还是我只是想在课堂上传递“非法”的东西? 谢谢!
答案 0 :(得分:3)
您的问题是它认为您正在调用 对象 Yann和Bob,而实际上您认为它们是字符串。
试试这个:
stu1 = Student("Yann", 1, 67,98)
stu2 = Student("Bob", 2, 42, 12)
答案 1 :(得分:2)
字符串文字必须是引号。
stu1 = Student("Yann", 1, 67, 98)
stu2 = Student("Bob", 2, 42, 12)