python__基础 : 类属性,类方法,静态方法
2018-06-18 02:56:01来源:未知 阅读 ()
类属性 定义在类里面,方法外面的属性,一般属于这个类,如下面的 num 就是类属性:
class Test: num = 0
类属性用 实例.类属性 或者 类.类属性 都可以访问,
如 a = Test() 用 a.num 可以访问 ,但是如果这个实例有一个实例属性 self.num 那么这样访问的其实是 self.num ,
所以一般用 类.属性 即这样 Test.num 访问
类方法, 类方法是属于这个类的方法,定义方式为 前面加上装饰器 @classmethod 且第一个参数传递的是当前类的名字,和self 差不多,只不过一般用 cls 来表示 :
class Test: num = 0 @classmethod def setNum(cls, newNum): cls.num = newNum
这个 setNum 方法就是类方法,可以通过调用 Test.setNum(100) 这种方式来把类属性 num 的值改为 100
当然也可以通过 实例.setNum(100) 来调用,但是如果有个实例方法也是test这个名字,那么调用的将会是实例方法而不是类方法.
静态方法:如果一个方法,和类属性实例属性类方法实例方法都没有什么关系,如 只是打印一句话,那么可以把他作为一个静态方法,前面需要加上装饰器 @staticmethod :
class Test: @staticmethod def printInfo(): print('this is a staticmethod')
这个静态方法和类方法一样,可以用实例调用也可以用类调用,但是一般用 类.静态方法 调用,因为如果有相同名字的实例方法,也是优先调用实例方法.
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:python-进程
下一篇:python-9-IO编程
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash