初学python以下代码报错标题中的错误:TypeError: str returned non-string (type NoneType)
class Person: #基于object类
def __init__(self, name):
self.name = name
def __str__(self):
print("名字是:{0}".format(self.name)) #str返回的用return,不能用print否则会报错
s = Person("高琪")
print(s)
在重写str方法时,不能用print,需要用return,改为如下代码形式就不再报错了:
class Person: #基于object类
def __init__(self, name):
self.name = name
def __str__(self):
return "名字是:{0}".format(self.name) #str返回的用return,不能用print否则会报错
s = Person("高琪")
print(s)