全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

详解Python中的静态方法与类成员方法

前言

因为Python的水平目前一直是处于能用阶段,平时写的脚本使用的Python的写法也比较的简单,没有写过稍微大一点的项目。对Python中的类,类之间的组织关系,整个项目中类之间如何耦合还缺乏认识。打算读一读别人写的Python代码来学习一下Python在工程中的应用,提升自己的技术水平。选取的Python代码是Python爬虫代码,github地址。这个代码刚好是符合跳出我的舒适区的水平的代码,因此很适合我目前的水平来学习。

在Python2.4之后,主要使用装饰器来实现静态方法和类方法。

装饰器使用@操作符,例子如下:

class Example:
 val1 = "Value 1"
 def __init__(self):
 self.val2 = "Value 2"

 @staticmethod
 def staticmd():
 print("静态方法,无法访问Value1和Value2")

 @classmethod
 def classmd(cls):
 print('类方法,类:'+str(cls)+",val1:"+cls.val1+",无法访问val2的值")


example = Example()
example.staticmd() #实例调用静态方法,无法访问实例变量val1和val2
example.classmd() #实例调用类方法,输出结果:类方法,类:<class '__main__.Example'>,val1:Value 1,无法访问val2的值
Example.classmd() #类调用类方法,输出结果:类方法,类:<class '__main__.Example'>,val1:Value 1,无法访问val2的值
example.val1 = "The instance value1 changed"
example.classmd() #类调用类方法,输出结果:类方法,类:<class '__main__.Example'>,val1:Value 1,无法访问val2的值
Example.val1 = "The class value2 changed"
example.classmd() #类调用类方法,输出结果:类方法,类:<class '__main__.Example'>,val1:The class value2 changed,无法访问val2的值
Example.classmd() #类调用类方法,输出结果:类方法,类:<class '__main__.Example'>,val1:The class value2 changed,无法访问val2的值

相信从上面的例子中,就可以很明显地分辨出静态方法和类方法的区别了。

先是在语法上面的区别:

  • 静态方法不需要传入self参数,类成员方法需要传入代表本类的cls参数;
  • 静态方法是无妨访问实例变量和类变量的,类成员方法无法访问实例变量但是可以访问类变量

使用的区别:

由于静态方法无法访问类属性,实例属性,相当于一个相对独立的方法,跟类其实并没有什么关系。这样说来,静态方法就是在类的作用域里的函数而已。

总结

好了,以上就是这篇文章的全部内容了,最后,如何在实际的项目中使用静态方法和类方法,这个等一段时间有更深的体会再和大家交流吧。希望本文的内容对大家的学习或者工作能带来一定的帮助。


# python中静态方法  # python  # 静态方法调用  # 类成员方法  # Python面向对象之静态属性、类方法与静态方法分析  # python中的实例方法、静态方法、类方法、类变量和实例变量浅析  # python的类方法和静态方法  # 浅谈python中的实例方法、类方法和静态方法  # Python实例方法、类方法、静态方法的区别与作用详解  # 深入解析python中的实例方法、类方法和静态方法  # Python探索之静态方法和类方法的区别详解  # Python3.0中普通方法、类方法和静态方法的比较  # Python 实例方法、类方法、静态方法的区别与作用  # Python 面向对象静态方法、类方法、属性方法知识点小结  # 无法访问  # 自己的  # 是在  # 好了  # 不需要  # 本类  # 组织关系  # 这篇文章  # 很明显  # 来实现  # 有什么关系  # 技术水平  # 写过  # 很适合  # 就可以  # 辨出  # 读一读  # 平时  # 就是在  # 在实际 


相关文章: 建站之星在线客服如何快速接入解答?  平台云上自主建站:模板化设计与智能工具打造高效网站  香港服务器WordPress建站指南:SEO优化与高效部署策略  ,南京靠谱的征婚网站?  浅谈Javascript中的Label语句  如何选择网络建站服务器?高效建站必看指南  建站主机助手选型指南:2025年热门推荐与高效部署技巧  营销式网站制作方案,销售哪个网站招聘效果最好?  如何零基础开发自助建站系统?完整教程解析  制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?  如何正确选择百度移动适配建站域名?  如何在云主机上快速搭建网站?  太平洋网站制作公司,网络用语太平洋是什么意思?  网站制作壁纸教程视频,电脑壁纸网站?  如何高效完成自助建站业务培训?  免费ppt制作网站,有没有值得推荐的免费PPT网站?  建站之星在线版空间:自助建站+智能模板一键生成方案  网站制作公司排行榜,抖音怎样做个人官方网站  淘宝制作网站有哪些,淘宝网官网主页?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  建站之星代理费用多少?最新价格详情介绍  ,怎么在广州志愿者网站注册?  如何用景安虚拟主机手机版绑定域名建站?  微信推文制作网站有哪些,怎么做微信推文,急?  Python多线程使用规范_线程安全解析【教程】  jQuery 常见小例汇总  如何高效完成独享虚拟主机建站?  代购小票制作网站有哪些,购物小票的简要说明?  制作网站的过程怎么写,用凡科建站如何制作自己的网站?  动图在线制作网站有哪些,滑动动图图集怎么做?  c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】  上海网站制作开发公司,上海买房比较好的网站有哪些?  建站之星图片链接生成指南:自助建站与智能设计教程  网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?  建站主机无法访问?如何排查域名与服务器问题  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  大连网站设计制作招聘信息,大连投诉网站有哪些?  常州自助建站:操作简便模板丰富,企业个人快速搭建网站  实例解析Array和String方法  如何获取开源自助建站系统免费下载链接?  宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?  建站主机CVM配置优化、SEO策略与性能提升指南  建站主机选购指南与交易推荐:核心配置解析  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  Android使用GridView实现日历的简单功能  沈阳制作网站公司排名,沈阳装饰协会官方网站?  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  TestNG的testng.xml配置文件怎么写  正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。