我是Python的初学者.我正在关注"以艰难的方式学习Python".在练习40中,我尝试编写一个简短的代码但是出错了.请帮我 :(
资源
class showInfo(object):
'Initialize a classL'
def __int__(self, name, phone, age):
self.name = name
self.phone = phone
self.age = age
def showName(self):
print("Name: "+self.name)
def showAge(self):
print("Age: "+self.age)
def showPhone(self):
print("Phone: "+self.phone)
emp1 = showInfo("JJJ")
emp1.showName()
Run Code Online (Sandbox Code Playgroud)
调试
Traceback (most recent call last):
File "classes.py", line 15, in <module>
emp1 = showInfo("JJJ")
TypeError: object() takes no parameters
Run Code Online (Sandbox Code Playgroud)
原因__init__是错误拼写:-)
之后,将出现不同的错误消息,因为showInfo("JJJ")只有在需要三个参数时才传递一个参数showInfo(somename, somephone, someage).
之后,还会有一条消息,因为最后三个方法没有在类定义下正确缩进.
这是固定代码:
class showInfo(object):
'Initialize a classL'
def __init__(self, name, phone, age):
self.name = name
self.phone = phone
self.age = age
def showName(self):
print("Name: "+self.name)
def showAge(self):
print("Age: "+self.age)
def showPhone(self):
print("Phone: "+self.phone)
emp1 = showInfo("Tom", "555-1212", 21)
emp1.showName()
Run Code Online (Sandbox Code Playgroud)
这输出:
Name: Tom
Run Code Online (Sandbox Code Playgroud)