在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
Python开发中类方法、类实例方法、静态方法的区别和作用:类方法是类对象的方法;类实例方法是类实例化对象的方法;态方法是一个任意函数,在其上方使用“@staticmethod”进行装饰。

类方法:是类对象的方法,在定义时需要在上方使用“@classmethod”进行装饰,形参为 cls,表示类对象,类对象和实例对象都可调用;
类实例方法:是类实例化对象的方法,只有实例对象可以调用,形参为 self,指代对象本身;
静态方法:是一个任意函数,在其上方使用“@staticmethod”进行装饰,可以用对象直接调用,静态方法实际上跟该类没有太大关系。
这三种方法都定义在类中。下面我先简单说一下怎么定义和调用的,其中实例对象的权限最大。
实例方法定义:第一个参数必须是实例对象,该参数名一般约定为“self”,通过它来传递实例的属性和方法也可以传类的属性和方法;
调用:只能由实例对象调用。
类方法定义:使用装饰器@classmethod。第一个参数必须是当前类对象,该参数名一般约定为“cls”,通过它来传递类的属性和方法(不能传实例的属性和方法);
调用:实例对象和类对象都可以调用。
静态方法定义:使用装饰器@staticmethod。参数随意,没有“self”和“cls”参数,但是方法体中不能使用类或实例的任何属性和方法;
调用:实例对象和类对象都可以调用。
实例方法简而言之,实例方法就是类的实例能够使用的方法。这里不做过多解释。
类方法使用装饰器@classmethod。
原则上类方法是将类本身作为对象进行操作的方法。假设有个方法,且这个方法在逻辑上采用类本身作为对象来调用更合理,那么这个方法就可以定义为类方法。另外,如果需要继承,也可以定义为类方法。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
学Python好还是学Java好?
学Python好,还是学Java好?作为初入IT行业的小伙伴,也许会选择过程中的迷茫。毕竟Java作为老牌的编程语言,拥有广阔的市场,而Python作为近两年火爆起来的语言,在诸多领域均有长足的发展。那到底选择哪种语言好呢?
15992
2019-08-22 14:08:02
Python面试题 Tornado的核心是什么?
Tornado 的核心是 ioloop 和 iostream 这两个模块,前者提供了 一个高效的 I/O 事件循环,后者则封装了 一个无阻塞的 socket 。 通过向 ioloop 中添加网络 I/O 事件,利用无阻塞的 socket ,再搭配相应的回调函数,便可达到梦寐以求的高效异步执行。
14654
2019-07-02 17:43:40
自学Python基础语法学习总结
随着人工智能的崛起和快速发展,Python成为众多编程自学者的首选语言。本文整理了定义变量、字符串、运算符、if语句、循环语句、列表、字典、元组、函数、文件操作等等Python基础语法知识点,希望下面的学习总结可以帮助大家快速掌握Python编程,现在我们一起来梳理一遍吧!
9039
2019-10-17 14:41:43
学Python好找工作吗?需要满足Python岗位哪些要求?
学Python好找工作吗?需要满足哪些要求?随着Python的火爆,国内Python的岗位也随之增多,只要技术能力强项目经验充足,找到工作不是问题。即使是一些二线城市,Python的薪资待遇也比较好。
6218
2020-03-19 17:59:30
如何使用连接更新表中某个字段数据?
如何使用连接更新表中某个字段数据?在实际操作中连接更新表中数据经常使用: update .. join .. 语句,因此需要能写出连接更新表中某个字段数据的SQL语句。
6319
2022-01-24 14:32:11
