Python Forum

Full Version: error in class
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
class Student():
    def __init__(self, name, CNE, Level ):
        self.name=name
        self.CNE=CNE
        self.Level=Level
    def student_name(self):
        student_info= "name is :" +  self.name + ",CNE is :" + str(self.CNE) + " and Level is :" + self.Level
        return student_info
Student("mohammad ", 1123456789," PhD Student")
print(Student.student_name())
Error:
Error:
Traceback (most recent call last): File "C:/Users/HP/Desktop/Telegram Desktop/class practice.py", line 10, in <module> print(Student.student_name()) TypeError: student_name() missing 1 required positional argument: 'self' Process finished with exit code 1
student_name() is set up as a class method. It shouldn't be called directly as you do on line 10. Instead, you should be capturing the instance created on line 9 and use that to call the method.

...
mystudent = Student("mohammad ", 1123456789," PhD Student")
print(mystudent.student_name())
Output:
name is :mohammad ,CNE is :1123456789 and Level is : PhD Student