0 函数和方法
-函数就是有几个值就要传几个值
-方法:对象方法,类方法,可以自动传值
1 类中有三种方法
-没用装饰器装饰的:绑定给对象的方法,对象来调用
person.speak()--->可以自动把对象传入
类调用对象的绑定方法?可以调用--》这个方法就变成了普通函数,有几个值就要传几个值
Person.speak(person)
-使用classmethod装饰的,绑定给类的方法,类来调用
Person.xx()--->可以自动把类传入
对象也可以调用类的绑定方法: person.xx()-->会自动把person对象的类传入
-使用staticmethod装饰器的,静态方法--》函数
-对象可以调用:有几个值就要传几个值,没有自动传参
-类可以调用:有几个值就要传几个值,没有自动传参
##### 绑定方法###
class Person:
def speak(self):
print(f'对象的绑定方法,{self.name}说话了')
@classmethod
def xx(cls):
print(cls, '类的绑定方法,类和对象都可以调用-如果对象调用,会自动把对象类传进来')
@staticmethod
def yy():
print('普通静态方法,谁都可以调用')
person=Person()
person.name='lqz'
# 对象调用对象的绑定方法
person.speak()
# 类调用类的绑定方法
Person.xx()
# 对象或类调用静态方法
person.yy()
Person.yy()
# 不正统:对象掉类的绑定方法--可以掉--》自动把对象的类传入
person.xx()
# 不正统:类调用对象的绑定方法---》就变成了普通函数,有几个值就要传几个值
Person.speak(person)
![image](https://img2024.cnblogs.com/blog/3110800/202404/3110800-20240419193752379-128223862.png)