我正在尝试运行此代码,但出现错误:
我的代码:
class Student:
def __init__(self, student_id, marks,age):
self.student_id=student_id
self.marks=marks
self.age=age
def validate_age(self):
if self.age >20:
return True
else:
return False
def validate_marks(self):
if self.marks>0 and self.marks<100:
return True
else:
return False
def check_qualification(self):
if (validate_age)==True and if(validate_marks)==True:
if self.marks>65:
return True
else:
return False
def set(self,x):
self.__student_id=x
def get(self):
if (check_qualification==True):
return True
else:
return False
答案 0 :(得分:3)
在我看来,您可以更改行
if (validate_age)==True and if(validate_marks)==True:
到
if self.validate_age() and self.validate_marks():
请注意,由于这些函数已经返回布尔值,因此添加== True
是多余的。只需调用函数就足够了。
您可能还必须更改get()中的行
if (check_qualification==True):
到
if self.check_qualification():
编译器感到困惑,因为您实际上并未在代码中调用函数。