Methods 为什么一个方法的返回值在另一个方法中不可访问
我认为您在尝试调用validate_marks方法时遇到了问题Methods 为什么一个方法的返回值在另一个方法中不可访问,methods,return-value,attributeerror,Methods,Return Value,Attributeerror,我认为您在尝试调用validate_marks方法时遇到了问题 class Student: def __init__(self,student_id,marks,age): self.__student_id=student_id self.__marks=marks self.__age=age def set_student_id(self,student_id): self.__student_id=stu
class Student:
def __init__(self,student_id,marks,age):
self.__student_id=student_id
self.__marks=marks
self.__age=age
def set_student_id(self,student_id):
self.__student_id=student_id
def set_marks(self,marks):
self.__marks=marks
def set_age(self,age):
self.__age=age
def get_student_id(self):
return self.__student_id
def get_marks(self):
return self.__marks
def get_age(self):
return self.__age
def validate_age(self):
return True if self.__age>20 else False
def check_qualification(self):
a=validate_marks(self)
if a==True:
return True if self.__marks>=65 else False
else:
return False
def validate_marks(self):
return True if self.__marks in range(0,101) else False
a=Student(4,89,22)
a.check_qualification()
shows error help to fix it
用法看起来像
def validate_age(self):
return self.__age > 20
def check_qualification(self):
return self.validate_marks() and self.validate_age() and self.__marks >= 65
def validate_marks(self):
return self.__marks in range(0, 101)
谢谢你的帮助。它工作得很好。你能解释一下我们的check_qualification()方法有什么不同吗?你试图将self作为参数传递,但你需要使用self调用其他实例方法。如果你发现答案有效,你可以接受。我可以调用set_age(age)inside check_qualification()吗?我的意思是如何调用在另一个方法中使用参数的方法。用法类似于self.set_age(age)。是否需要在check_qualification()方法中询问age的值?否则,输入是什么?a.check_qualification()如何获得年龄值?
james = Student(12, 79, 25) # 12 - Student ID, 79 Marks & 25 Age
james.check_qualification() # True or False based on validation