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__() 需要返回一个对象,作为对象的描述
posted @ 2021-08-30 09:30  做梦当财神  阅读(252)  评论(0编辑  收藏  举报