第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > Python中的function bounded method unbound method

Python中的function bounded method unbound method

时间:2024-02-07 21:35:00

相关推荐

Python中的function bounded method unbound method

今天学习代码的过程中,被大佬突然询问知道function,bounded method,unbound method这三者的区别吗?带着半信半疑的态度,google了一下,有些写的挺详细的,但是没有那么直接,下面谈一谈我的理解:

function:在Python中,以模块区分代码结构的最小单位,而function就是直接定义在模块下面,没有被类(Class)所包裹,类似于:

# -*- coding: utf-8 -*-def fun1():passprint fun1

输出结果为:

<function fun1 at 0x00000000037C6048>

method分为bounded 和 unbound,也就是模块中存在于类里面的函数

unbound method:指的是直接定义在类里面的那个方法,代码如下:

# -*- coding: utf-8 -*-class A(object):def fun1(self):passprint A.fun1

这里满的fun1就是我们说的 unbound method,输出的结果是:

<unbound method A.fun1>

bounded method: 翻译过来就是有界的函数,其实直白点就是实例化之后对象所拥有的方法,代码如下

class A(object):def fun1(self):passa = A()print a.fun1

输出的结果是:

<bound method A.fun1 of <__main__.A object at 0x0000000003143358>>

所以,总的来说,方法就是直接定义在模块下面的函数,unbound method是直接定义的类里面的函数,

bounded method是实例化之后类的方法。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。