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中的变量和作用域详解
Jul 13 Python
python中urllib.unquote乱码的原因与解决方法
Apr 24 Python
高效测试用例组织算法pairwise之Python实现方法
Jul 19 Python
python 3.6 +pyMysql 操作mysql数据库(实例讲解)
Dec 20 Python
Python使用Pickle库实现读写序列操作示例
Jun 15 Python
python+numpy+matplotalib实现梯度下降法
Aug 31 Python
PyCharm专业最新版2019.1安装步骤(含激活码)
Oct 09 Python
python生成特定分布数的实例
Dec 05 Python
Python3运算符常见用法分析
Feb 14 Python
使用 Python 在京东上抢口罩的思路详解
Feb 27 Python
python3 使用openpyxl将mysql数据写入xlsx的操作
May 15 Python
Python环境搭建过程从安装到Hello World
Feb 05 Python
Python Matplotlib绘制条形图的全过程
python基础之模块的导入
python基础之文件操作
python基础之错误和异常处理
Python中递归以及递归遍历目录详解
Oct 24 #Python
python基础之函数的定义和调用
python 标准库原理与用法详解之os.path篇
Oct 24 #Python
You might like
全国FM电台频率大全 - 28 甘肃省
2020/03/11 无线电
浅析php中常量,变量的作用域和生存周期
2013/08/10 PHP
windows7下安装php的php-ssh2扩展教程
2014/07/04 PHP
深入解析PHP的Yii框架中的缓存功能
2016/03/29 PHP
Yii 访问 Gii(脚手架)时出现 403 错误
2018/06/06 PHP
php/JS实现的生成随机密码(验证码)功能示例
2019/06/06 PHP
使用swoole 定时器变更超时未支付订单状态的解决方案
2019/07/24 PHP
JavaScript实现信用卡校验方法
2015/04/07 Javascript
jquery UI Datepicker时间控件的使用方法(终结版)
2015/11/07 Javascript
第九篇Bootstrap导航菜单创建步骤详解
2016/06/21 Javascript
javascript简易画板开发
2020/04/12 Javascript
ES6新特性之类(Class)和继承(Extends)相关概念与用法分析
2017/05/24 Javascript
基于Vue实现页面切换左右滑动效果
2020/06/29 Javascript
基于wordpress的ajax写法详解
2018/01/02 Javascript
element-ui 设置菜单栏展开的方法
2018/08/22 Javascript
vue-cli项目中使用echarts图表实例
2018/10/22 Javascript
详解如何在vue项目中使用eslint+prettier格式化代码
2018/11/10 Javascript
详解Next.js页面渲染的优化方案
2019/01/27 Javascript
微信小程序自定义toast组件的方法详解【含动画】
2019/05/11 Javascript
JS实现超级好看的鼠标小尾巴特效
2020/12/01 Javascript
[39:00]Optic vs VP 2018国际邀请赛淘汰赛BO3 第三场 8.24
2018/08/25 DOTA
Python中的zipfile模块使用详解
2015/06/25 Python
Windows下Python2与Python3两个版本共存的方法详解
2017/02/12 Python
详解django三种文件下载方式
2018/04/06 Python
python得到单词模式的示例
2018/10/15 Python
python买卖股票的最佳时机(基于贪心/蛮力算法)
2019/07/05 Python
Python-openpyxl表格读取写入的案例详解
2020/11/02 Python
应届大学生自荐信格式
2013/09/21 职场文书
幼儿教师研修感言
2014/02/12 职场文书
学雷锋活动倡议书
2014/08/30 职场文书
党的群众路线教育实践活动督导组工作情况汇报
2014/10/28 职场文书
房租涨价通知
2015/04/23 职场文书
道歉短信大全
2015/05/12 职场文书
婚宴致辞
2015/07/28 职场文书
智慧人生:永远不需要向任何人解释你自己
2019/08/20 职场文书
新手初学Java List 接口
2021/07/07 Java/Android