python基础之类方法和静态方法
目录
- 类方法
- 静态方法
- 复习
- 总结
类方法
文章图片
class People:country='China'# 类方法 用classmethod来修饰@classmethod#通过标识符来表示下方方法为类方法def get_country(cls):#习惯性使用clsreturn cls.country#访问类属性passpassprint(People.get_country())#通过类对象去引用p=People()print('实例对象访问%s'%p.get_country())#通过实例对象去访问
文章图片
class People:country='China'# 类方法 用classmethod来修饰@classmethod#通过标识符来表示下方方法为类方法def get_country(cls):#习惯性使用clsreturn cls.country#访问类属性pass@classmethoddef change_country(cls,data):cls.country=data#修改类属性的值在类方法中passprint(People.get_country())#通过类对象去引用p=People()print('实例对象访问%s'%p.get_country())People.change_country('英')print(People.get_country())
文章图片
静态方法
文章图片
class People:country='China'# 类方法 用classmethod来修饰@classmethod#通过标识符来表示下方方法为类方法def get_country(cls):#习惯性使用clsreturn cls.country#访问类属性pass@classmethoddef change_country(cls,data):cls.country=data#修改类属性的值在类方法中pass@staticmethoddef getData():#无需传参数return People.countrypassprint(People.getData())#可以访问# print(People.get_country())#通过类对象去引用p=People()print(People.getData())#可以访问注意 一般情况下 我们不会通过实例对象去访问静态方法
文章图片
为什么要使用静态方法呢?
由于静态方法主要来存放逻辑性的代码 本身和类以及实例对象没有交互
也就是说 在静态方法中 不会涉及到类中方法和属性的操作
数据资源能够得到有效的充分利用
# demo 返回当前的系统时间import time #引入时间模块class TimeTest:def __init__(self,hour,min,second):self.hour=hourself.min=minself.second=second@staticmethod#直接定义为静态方法 不需要实例属性def showtime():return time.strftime('%H:%M:%S',time.localtime())passprint(TimeTest.showtime())t=TimeTest(2,10,15)print(t.showtime())#无必要 直接使用静态方法 输出仍是导入时间
文章图片
文章图片
文章图片
文章图片
复习
文章图片
文章图片
总结 【python基础之类方法和静态方法】本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!
推荐阅读
- python学习之|python学习之 实现QQ自动发送消息
- 逻辑回归的理解与python示例
- python自定义封装带颜色的logging模块
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)
- Python(pathlib模块)
- python青少年编程比赛_第十一届蓝桥杯大赛青少年创意编程组比赛细则
- Java|Java基础——数组
- Python数据分析(一)(Matplotlib使用)