Python常见的特殊方法

本文详细介绍了Python中的一些特殊方法,包括:重写__repr__方法用于对象的自我描述,__del__方法在对象回收时自动调用,__dir__方法返回对象的所有属性和方法的有序序列,以及__dict__属性用于查看对象内部属性。此外,还讨论了__getattribute__、__getattr__、__setattr__和__delattr__等属性在访问、设置和删除对象属性时的作用。
摘要由CSDN通过智能技术生成

一、重写__repr__方法(类的自我描述方法)
当打印对象时,系统会根据__repr__方法输出对象的自我描述信息,用来告诉外界该对象具有的状态信息

class Rectangle:
	def __init__(self, width, height):
		self.width = width
		self.height = height

	def __repr__(self):
		return '这是一个矩形面积计算类'
	
c = Rectangle(3, 5)
print(c) #输出 ‘这是一个矩形面积计算类’

二、析构方法__del__
方法__del__()与__init__()方法对应,在任何Python对象要被系统回收时,系统会自动调用__del__()方法,注意只有当对象的引用计数变0时,该对象才会被回收。

class Rectangle:
	def __init__(self, width, height):
		self.width = width
		self.height = height

	def __repr__(self):
		return '这是一个矩形面积计算类'
	
	def __del__(self):
		print('这是删除Rectangle类对象的话术')

c = Rectangle(3, 5)
#x = c
del c
print('===========')

如上例所示当注释 x = c 时,先输出删除话术,再输出’===========’(执行del c 时可以立即回收对象,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值