实例方法
- 实例方法指的是只有实例对象才可以调用的方法
- 在类对象中定义实例方法时,第一个形参表示调用该方法的实例对象,其对应的实参由系统自动传入。第一个形参的名称通常是self,也可以是其它名称。
- 实例方法只能被实例对象所调用,有两种调用方式:
- 在类对象的内部:self.方法名([实参])
- 在类对象的外部:实例对象.方法名([实参])
类对象的所有实例对象都有一个指向类对象的指针,所以,类对象的所有实例对象都可以调用类对象中定义的实例方法
- 调用实例方法时,系统将自动调用该方法的实例对象作为实参传递给第一个形参。第一个实参会传递给第二个形参,第二个实参会传递给第三个形参,依次类推。
class MyClass(object):
# 在类对象中定义实例方法
def im1(self, p1, p2):
print(p1, p2)
def im2(self):
# 在类对象内部(其它实例方法中)调用实例方法
self.im1(1, 2)
mc = MyClass()
# 在类对象的外部调用实例方法
mc.im1(1, 2) # 1 2
mc.im2() # 1 2
函数装饰器
- 对于某个函数,若希望在不改变函数代码的前提下,为该函数增加额外的功能,那么就可以使用装饰器来装饰该函数。
- 装饰器是一个函数,装饰器接受一个函数作为参考(传入的实参是被装饰