python基础之类方法和静态方法


Posted in Python onOctober 24, 2021

类方法

python基础之类方法和静态方法

class People:
    country='China'
    # 类方法 用classmethod来修饰
    @classmethod  #通过标识符来表示下方方法为类方法
    def get_country(cls):  #习惯性使用cls
        return cls.country  #访问类属性
        pass
    pass
print(People.get_country())  #通过类对象去引用
p=People()
print('实例对象访问%s'%p.get_country())  #通过实例对象去访问

python基础之类方法和静态方法

class People:
    country='China'
    # 类方法 用classmethod来修饰
    @classmethod  #通过标识符来表示下方方法为类方法
    def get_country(cls):  #习惯性使用cls
        return cls.country  #访问类属性
        pass
    @classmethod
    def change_country(cls,data):
        cls.country=data  #修改类属性的值在类方法中
    pass
print(People.get_country())  #通过类对象去引用
p=People()
print('实例对象访问%s'%p.get_country())
People.change_country('英')
print(People.get_country())

python基础之类方法和静态方法

静态方法

python基础之类方法和静态方法

class People:
    country='China'
    # 类方法 用classmethod来修饰
    @classmethod  #通过标识符来表示下方方法为类方法
    def get_country(cls):  #习惯性使用cls
        return cls.country  #访问类属性
        pass
    @classmethod
    def change_country(cls,data):
        cls.country=data  #修改类属性的值在类方法中
    pass
    @staticmethod
    def getData():  #无需传参数
        return People.country
    pass
print(People.getData())   #可以访问

# print(People.get_country())  #通过类对象去引用
p=People()
print(People.getData())   #可以访问  注意 一般情况下 我们不会通过实例对象去访问静态方法

python基础之类方法和静态方法

为什么要使用静态方法呢?
由于静态方法主要来存放逻辑性的代码 本身和类以及实例对象没有交互
也就是说 在静态方法中 不会涉及到类中方法和属性的操作
数据资源能够得到有效的充分利用

# demo 返回当前的系统时间
import time #引入时间模块
class TimeTest:
    def __init__(self,hour,min,second):
        self.hour=hour
        self.min=min
        self.second=second
    @staticmethod  #直接定义为静态方法 不需要实例属性
    def showtime():
        return time.strftime('%H:%M:%S',time.localtime())
    pass
print(TimeTest.showtime())
t=TimeTest(2,10,15)
print(t.showtime())  #无必要 直接使用静态方法 输出仍是导入时间

python基础之类方法和静态方法

python基础之类方法和静态方法

python基础之类方法和静态方法

python基础之类方法和静态方法

复习

python基础之类方法和静态方法

python基础之类方法和静态方法

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注三水点靠木的更多内容!

Python 相关文章推荐
简单介绍Python中的JSON使用
Apr 28 Python
Python最火、R极具潜力 2017机器学习调查报告
Dec 11 Python
Python多线程threading和multiprocessing模块实例解析
Jan 29 Python
python提取图像的名字*.jpg到txt文本的方法
May 10 Python
python爬虫之urllib3的使用示例
Jul 09 Python
python 实现一次性在文件中写入多行的方法
Jan 28 Python
python 实现按对象传值
Dec 26 Python
python 解决tqdm模块不能单行显示的问题
Feb 19 Python
django 模型中的计算字段实例
May 19 Python
Python实现SMTP邮件发送
Jun 16 Python
五分钟带你搞懂python 迭代器与生成器
Aug 30 Python
Python爬虫之爬取二手房信息
Apr 27 Python
Python Matplotlib绘制条形图的全过程
python基础之模块的导入
python基础之文件操作
python基础之错误和异常处理
Python中递归以及递归遍历目录详解
Oct 24 #Python
python基础之函数的定义和调用
python 标准库原理与用法详解之os.path篇
Oct 24 #Python
You might like
咖啡历史、消费和行业趋势
2021/03/03 咖啡文化
Thinkphp框架开发移动端接口(2)
2016/08/18 PHP
php代码检查代理ip的有效性
2016/08/19 PHP
利用 fsockopen() 函数开放端口扫描器的实例
2017/08/19 PHP
PHP实现按之字形顺序打印二叉树的方法
2018/01/16 PHP
jQuery实现的类flash菜单效果代码
2010/05/17 Javascript
Javascript公共脚本库系列(一): 弹出层脚本
2011/02/24 Javascript
Jquery 实现表格颜色交替变化鼠标移过颜色变化实例
2013/08/28 Javascript
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
javascript获取元素离文档各边距离的方法
2015/02/13 Javascript
浅谈javascript事件取消和阻止冒泡
2015/05/26 Javascript
跟我学习javascript的for循环和for...in循环
2015/11/18 Javascript
JS模拟按钮点击功能的方法
2015/12/22 Javascript
纯JS实现可拖拽表单的简单实例
2016/09/02 Javascript
详解vue渲染函数render的使用
2017/12/12 Javascript
JS温故而知新之变量提升和时间死区
2019/01/27 Javascript
解决vue的过渡动画无法正常实现问题
2019/10/31 Javascript
js实现整体缩放页面适配移动端
2020/03/31 Javascript
[37:45]完美世界DOTA2联赛PWL S3 LBZS vs Phoenix 第二场 12.09
2020/12/11 DOTA
Python字符串处理实现单词反转
2017/06/14 Python
Python利用Django如何写restful api接口详解
2018/06/08 Python
用Python+OpenCV对比图像质量的几种方法
2019/07/15 Python
Python 共享变量加锁、释放详解
2019/08/28 Python
python 进程间数据共享multiProcess.Manger实现解析
2019/09/23 Python
利用Pytorch实现简单的线性回归算法
2020/01/15 Python
使用Python脚本从文件读取数据代码实例
2020/01/19 Python
如何使用Python进行PDF图片识别OCR
2021/01/22 Python
HTML5的新特性(1)
2016/03/03 HTML / CSS
施华洛世奇加拿大官网:SWAROVSKI加拿大
2018/06/03 全球购物
美国购买体育、音乐会和剧院门票网站:SelectATicket
2019/09/08 全球购物
什么是java序列化,如何实现java序列化
2012/11/14 面试题
少先队入队活动方案
2014/02/08 职场文书
小学国庆节活动方案策划书
2014/09/16 职场文书
2014年妇产科工作总结
2014/12/08 职场文书
优秀班主任主要事迹材料
2014/12/16 职场文书
详解Vue的列表渲染
2021/11/20 Vue.js