Python __str__()
定义 __str__()
方法
class Cat:
def __init__(self, new_name, new_age):
"""创建完对象自动调用,它完成对象的初始化功能"""
self.name = new_name
self.age = new_age # 它是一个对象中的属性,在对象中存储,即只要这个对象还存在,那么这个变量就可以使用
# num = 100 # 它是一个局部变量,当这个函数执行完之后,这个变量的空间就没有了,因此其他方法不能使用这个变量
def __str__(self):
"""返回一个对象的描述信息"""
return "名字是:%s, 年龄是:%d" % (self.name, self.age)
tom = Cat("汤姆", 30)
print(tom)
输出结果:
名字是:汤姆, 年龄是:30
总结:
- 在 python 中方法名如果是
__xxxx__()
的,就有特殊功能。 - 使用 print 输出对象时,如果定义了
__str__(self)
方法,就会打印从这个方法 return 的数据。 __str__()
需要返回一个对象,作为对象的描述。