构造函数无法获取输入参数

时间:2013-05-18 06:46:42

标签: python linux class error-handling constructor

我是Python新手。我一直在关注有关python类的在线教程,但是我得到了一个奇怪的错误。

我无法弄清楚我做了什么。

以下是我的代码:

class StudentData:
  "Contains information of all students"
  studentNumber = 0;
  def _init_(self,name,age,marks):
      self.name = name;
      self.age = age;
      self.marsk = marks;
  def displayStudentNUmber(self):
      print 'Total Number of students = ',studentNumber;
  def displayinfo(self):
      print 'Name of the Student: ',name;
      print 'Age of the Student: '.age;
      print 'Marks of the Student: '.marks;
student1 = StudentData('Ayesha',12,90)
student2 = StudentData('Sarah',13,89)
print "Student number in case of student 1",student1.displayStudentNumber();
print "Information of the Student",student1.dispalyinfo();
print "Student number in case of student 1",student2.displayStudentNumber();
print "Information of the Student",student2.dispalyinfo();

以下是 ERROR

  

回溯(最近一次呼叫最后一次):文件" main.py",第14行,in   student1 = StudentData(' Ali',12,90)TypeError:此构造函数   没有参数

任何人都可以解释为什么我会收到此错误。

对于一个蹩脚的问题抱歉:(

1 个答案:

答案 0 :(得分:5)

__init__()应该在两边都有两个下划线,因此python将你的对象视为你班级中的普通函数。

变化:

def _init_(self,name,age,marks):

def __init__(self,name,age,marks):