位置: 编程技术 - 正文

Python中getattr函数和hasattr函数作用详解(python中getattr函数例子)

编辑:rootadmin

推荐整理分享Python中getattr函数和hasattr函数作用详解(python中getattr函数例子),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python getattr和getattribute,python中getattribute,python getattr setattr,python3 getattr,python中getattribute,python getattr setattr,python中getattr函数例子,Python中getattr函数,内容如对您有帮助,希望把文章链接给更多的朋友!

hasattr(object, name)

作用:判断对象object是否包含名为name的特性(hasattr是通过调用getattr(ojbect, name)是否抛出异常来实现的)。

示例:

作用:返回object的名称为name的属性的属性值,如果属性name存在,则直接返回其属性值;如果属性name不存在,则触发AttribetError异常或当可选参数default定义时返回default值。

这个方法最主要的作用是实现反射机制。也就是说可以通过字符串获取方法实例。这样,你就可以把一个类可能要调用的方法放在配置文件里,在需要的时候动态加载。

下面我们使用小例子来说明它们的用法:

Python中getattr函数和hasattr函数作用详解(python中getattr函数例子)

当我定义一个自定义模块,去调用其中的方法的时候,使用if去判断时,如果模块内用很多方法,会大大影响开发的效率,代码冗余差,显然这是不可取的。下面我们使用hasattr()函数来实现我们的需求:

示例如下:

我们导入一个自定义模块后,gatattr可以根据输入的内容动态加载,利用hasattr()函数来判断用户输入的是否存在,不存在则调用自定义方法。

是不是感觉和我们打开网址URL很类似啊!

上一个示例有一个问题,在实际情况中,我们的功能函数可能存放在很多模块中,每一个都需要单独导入,那我们可不可以利用getattr()函数去动态加载模块呢?当然可以啦

请看示例:

是不是感到getattr很强大啊。其实,getattr()就是实现python反射的一块积木,结合其它方法如setattr(),dir() 等,我们可以还可以做出很多有趣的事情。

浅析Python中的getattr(),setattr(),delattr(),hasattr() getattr()函数是Python自省的核心函数,具体使用大体如下:获取对象引用getattrGetattr用于返回一个对象属性,或者方法classA:def__init__(self):self.name='zhangjing'#s

详解Python中的Descriptor描述符类 描述符是调和属性访问的一个类。描述符类可用来获取、设置或删除属性值。描述符对象是在类定义的时候构建在一个类中的。一般来说,描述符是一

深入解析Python中的线程同步方法 同步访问共享资源在使用线程的时候,一个很重要的问题是要避免多个线程对同一变量或其它资源的访问冲突。一旦你稍不留神,重叠访问、在多个线

标签: python中getattr函数例子

本文链接地址:https://www.jiuchutong.com/biancheng/387627.html 转载请保留说明!

上一篇:Python模块包中__init__.py文件功能分析(python 包 __init__)

下一篇:浅析Python中的getattr(),setattr(),delattr(),hasattr()(python中get()函数)

  • 开出销项发票和进项票成本有出入怎么办?
  • 房地产中介门头
  • 收购农副产品怎么做账
  • 企业结算时待摊费用怎么办
  • 销项发票导出是什么意思
  • 个税完税凭证在哪里打印出来
  • 固定资产处置后账务处理
  • 企业收到的土地补偿款的企业所得税
  • 应付职工薪酬期初余额在哪方
  • 购进商品交印花税
  • 公司自建厂房需要缴纳哪些税
  • 营改增是什么时候提出的
  • 汇算清缴补交所得税会计分录小企业会计政策
  • 招待费与去年减少的原因
  • 增值税专票盖章盖在哪里
  • 增值税普通发票税率
  • 办公费支出属于资产项目吗
  • 资产处置损益的明细科目有哪些
  • 新开公司第一个月个税零申报,但是有发工资
  • 电子发票怎么冲红字
  • 物流公司怎么进去工作的
  • 白银及其制品出自哪里
  • ubuntu系统怎么安装微信
  • window10最新20h2
  • linux runit
  • 进价金额核算法的账务处理特点
  • 进程mmc.exe
  • win10开机强制进入安全模式重置
  • 跨平台桌面程序
  • 最高成本的手机是哪款
  • 企业所得税必须要季度缴纳吗
  • 调频连续波雷达
  • 什么是前后端分离的方式
  • 印花税应税凭证数量是什么意思
  • thinkphp 分页
  • 公积金会计分录怎么处理2019
  • 装修费用一次性计入成本
  • 其他综合收益 综合收益
  • ajax json请求
  • 土地无形资产摊销年限多少年
  • 企业赠送客户礼品涉税
  • 房开企业增值税销项税额
  • 如何确定固定资产是否已经发生减值
  • 经营性收入包括成本吗
  • 企业所得税报表查询怎么查
  • 发行股票的账务处理
  • 货物退回的会计怎么做账
  • 购税盘怎么做会计分录
  • 职工教育经费超过扣除限额的时候调增还是调减
  • 什么是委托检验报告
  • 多计提的城建税怎么冲减
  • 委托加工的相关法律规定
  • 工会经费计税依据是应发还是实发
  • 分公司是否可以享受六税两费政策
  • 公司财务人员的作用
  • 商业企业库存商品
  • mysql5.7版本的服务的名字是
  • win8怎么添加我的电脑到桌面
  • ubuntu2004分区教程
  • linux输出结果
  • 在windows下把绿色程序添加到鼠标右键的方法
  • 彻底删除ubuntu系统
  • macbookpro鼠标触控板
  • centos7更改默认内核
  • win10version最新版本
  • SetPoint.exe - SetPoint是什么进程 有什么用
  • Win7升级win10后可以删除2345吗
  • javascript Ext JS 状态默认存储时间
  • jsonarray fromobject
  • Extjs4 GridPanel 的几种样式使用介绍
  • 基于是什么意思
  • nodejs创建vue
  • 批处理实例
  • jquery 插件写法
  • javascript ()
  • unity3d特效教程
  • js常用方法总结
  • python对文件操作采用的统一
  • 完税凭证验证码
  • 天津静海离天津市区多远
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设