Python3__方法(一本正经瞎忽悠系列)

来源:互联网 发布:怎么看mac地址 编辑:程序博客网 时间:2024/06/05 16:34

Python3的方法

方法的创建

再此之前我们先回顾一下函数
函数的创建时需要

def

方法与函数相似
也是使用

def

创建的
但是方法必须在类里面创建
不放在类里面的方法不叫方法叫函数
所以想要区分方法很简单你
只需要记住
属于某个类的函数就是方法 不属于任何类的函数就是函数

方法创建格式

class 类名:    def 方法名(参数):            代码

class person:    def foo1(self):        print(self)

Python的方法分类

Python方法分为
实例方法、类方法、静态方法、

实例方法

特点
实例方法只能通过实例调用,实例方法第一个定义的参数只能是实例本身的引用

class person:
def foo1(self):
print(self)

self指的是类实例对象本身(注意:不是类本身),在python中self不是关键词,你可以定义成a或b或其它名字都可以
调用实例方法

p=person()    p.foo1() 

注意实例方法只能通过实例调用
下面这种方法是错的

person().foo1() #错误的

实例方法的总结
实例方法只能通过实例调用,实例方法第一个定义的参数只能是实例本身的引用

类方法

特点
定义类方法要使用装饰器 @classmethod ,定义的第一个参数只能是类对象的引用,可以通过类或者实例直接调用

例子

class person:    @classmethod    def foo2(cls):        print(cls)

使用

p=person()p.foo2()person().foo2()

与实例方法的不同之处
类方法
创建时 需要使用装饰器 @classmethod
调用时 可以通过类或者实例直接调用

静态方法

特点
定义静态方法要使用@staticmethod,没有默认的必须参数,可以通过类或实例调用
例子:

 class person:    @staticmethod    def foo3():        print('foo3')

使用

p=person()p.foo3person().foo3()

与实例方法、类方法的不同之处
静态方法
创建时 需要使用装饰器 @staticmethod
没有默认的必须参数
调用时 可以通过类或者实例直接调用

如有不足请在评论区提出
宝宝还是新手

原创粉丝点击