【发布时间】:2019-05-03 11:52:38
【问题描述】:
我在运行时遇到这种类型的错误
Traceback (most recent call last):
File "C:\Python37-32\python\program\overiding.py", line 17, in <module>
e1=Employee("Rajesh",9000)
TypeError: object.__new__() takes no parameters
class Employee:
def _init_(self, nm=None, sal=None):
self.name=nm
self.salary=sal
def getName(self):
return self.name
def getSalary(self):
return self.salary
class SalesOfficer(Employee):
def _init_(self,nm=None,sal=None,inc=None):
super()._init_(nm,sal)
self.incnt=inc
def getSalary(self):
return self.salary+self.incnt
【问题讨论】:
-
_init_不正确。它应该有两个下划线:__init__. -
@Devesh 我认为通过添加
class Employee行,您可能已经掩盖了错误。我怀疑它的位置可能还有其他东西。 -
我刚刚纠正了缩进,
class Employee行与三引号在同一行,导致该行不显示,我只是将该行放在下一行!然后它出现了!现在你最后一次编辑覆盖了@NickT :( -
@DeveshKumarSingh derp,修订查看器根本没有渲染它。对不起stackoverflow.com/revisions/55962624/1
标签: python