为什么Python中会出现TypeError?
在这个python程序中,当我运行它时,会出现以下错误:为什么Python中会出现TypeError?,python,Python,在这个python程序中,当我运行它时,会出现以下错误: 回溯(最近一次呼叫最后一次): 文件“C:\pythonworkspace\testaddfr\src\test\\uuuu init\uuuu.py”,第12行,在 john=AddrBookEntry('sss','999')) TypeError:AddrBookEntry()不接受任何参数 您可以尝试使用 AddrBookEntry.name=/*Some name*/ AddrBookEntry.phone=/*一些phome*
回溯(最近一次呼叫最后一次):
文件“C:\pythonworkspace\testaddfr\src\test\\uuuu init\uuuu.py”,第12行,在
john=AddrBookEntry('sss','999'))
TypeError:AddrBookEntry()不接受任何参数
您可以尝试使用
AddrBookEntry.name=/*Some name*/
AddrBookEntry.phone=/*一些phome*/
使用添加调用函数
AddrBookEntry.updatePhone(“”,“”)
取消缩进john=AddrBookEntry('sss','999')
和john
。您有几个缩进错误(d删除类注释和john=…
内容。完成后,它会工作。这里没有任何东西会导致您声称的错误。您是否可以应用更改,使此脚本成为我们可以运行的脚本,并验证它是否会产生错误?是的,我们必须查看您是如何调用此脚本的。根据错误,我猜您正在调用方法,而不是通过类所需的对象句柄。请提供一个。它将变量添加到类对象本身,而不是实例。他们可以尝试这样做,但为什么?这并不能真正解决问题,对吗?
class AddrBookEntry(object): # class definition
'address book entry class'
def __init__(self, nm, ph): # define constructor
self.name = nm # set name
self.phone = ph # set phone#
print ('Created instance for:', self.name)
def updatePhone(self, newph): # define method
self.phone = newph
print ('Updated phone# for:', self.name )
john = AddrBookEntry('sss','999')
john