品易云推流 关闭
文章详情页
文章 > Python常见问题 > python函数与方法的区别是什么

python函数与方法的区别是什么

头像

爱喝马黛茶的安东尼

2019-11-02 15:19:155850浏览 · 0收藏 · 0评论

Python中函数和方法的区别

1、函数要手动传self,方法不用传self。

2、如果是一个函数,用类名去调用,如果是一个方法,用对象去调用。

举例说明:

class Foo(object):
    def __init__(self):
        self.name="haiyan"
    def func(self):
        print(self.name)
obj = Foo()
obj.func()
Foo.func(obj)

判断函数和方法的方式

from types import FunctionType,MethodType
obj = Foo()
print(isinstance(obj.func,FunctionType))  #False
print(isinstance(obj.func,MethodType))   #True   #说明这是一个方法
print(isinstance(Foo.func,FunctionType))  #True   #说明这是一个函数。
print(isinstance(Foo.func,MethodType))    #False

python学习网,免费的在线学习python平台,欢迎关注!

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图