首页 > 其他 > 详细

绑定方法与非绑定方法介绍

时间:2019-08-13 09:44:14      阅读:60      评论:0      收藏:0      [点我收藏+]
‘‘‘
在类内部定义的函数,分为两大类:
一:绑定方法:绑定给谁,就应该有谁来调用,谁来调用就会把调用者当第一个参数自动传入
绑定到对象的方法:在类内定义的没有被任何装饰器修饰的
绑定到类的方法:在类内定义的被装饰器classsmethod修饰的方法
二:非绑定方法:没有自动传值这么一说了,就类中定义的一个普通工具,对象和类都可以使用
非绑定方法:不与类或者对象绑定
‘‘‘

# --------------- 绑定给对象用的函数如下 -------------------

class Foo:
def __init__(self,name):
self.name=name

def tell(self):
print(‘名字是%s‘ %self.name)


# --------------- 绑定给类用的函数如下 ------------------------
@classmethod
def func(cls):
print(cls)

# ---------------- 非绑定方法 -----------------------
@staticmethod
def func1(x,y):
print(x+y)

f1= Foo(‘kingforn‘)
f1.tell() # 绑定对象
Foo.func() # 绑定类

‘‘‘
执行结果:
名字是kingforn
<class ‘__main__.Foo‘>
‘‘‘
print(f1.func1)
print(Foo.func1)
‘‘‘
执行结果:
<function Foo.func1 at 0x0000019E4DECFBF8>
<function Foo.func1 at 0x0000019E4DECFBF8>
‘‘‘
Foo.func1(1,2)
f1.func1(1,2)
‘‘‘
执行结果:
3
3
‘‘‘

绑定方法与非绑定方法介绍

原文:https://www.cnblogs.com/kingforn/p/11343733.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!