位置: 编程技术 - 正文

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()函数)

  • 计提个税与实际缴纳不一致
  • 一般纳税人公账转法人私账
  • 固定资产的进项税额不允许抵扣的增值税属于
  • 两地发工资个税处理
  • 作废的发票要拿出来吗
  • 企业职工保险如何转灵活就业
  • 普通发票做账有什么用
  • 国外客户给你寄来礼物怎么感谢
  • 两个公司的现金怎么交税
  • 暂估入账估低了怎么办
  • 应付企业负担的职工社会保险费
  • 超市的发票是什么种类
  • 金税盘减免分录
  • 国税2016年第53号公告解读
  • 自然人借款给企业的涉税风险
  • 员工个人学历教育费用不能在企业所得税前列支
  • 增值税更正申报表需要逐月更正吗
  • 出口加工区内企业可经营什么业务
  • 公司开13个点增值税交多少钱
  • 委托加工物资成本计入
  • 药店销售小票要保存多久
  • 手机压缩包损坏怎么修复
  • 贷款资金取现就无法追查了吗
  • sxgdsenu.exe - sxgdsenu是什么进程 有什么用
  • 腾讯电脑管家的信任区在哪里
  • 专业版 win10
  • 公司收到供应商的律师函
  • 促销费用计入销售费用哪个科目
  • 收费公路通行费财政电子票据可以抵扣吗
  • debian配置
  • PHP:JulianToJD()的用法_日历函数
  • 出现巨石
  • webssh github
  • php发送qq邮箱
  • 项目成本估算的结果一般不包括
  • 现金流量表 科目
  • php 模拟post
  • 用抵扣券买了东西可以退吗
  • php7多线程支持如何
  • vuecli项目实战
  • vue router怎么传值
  • 时间序列模型ARIMA的优缺点
  • Laravel5中防止XSS跨站攻击的方法
  • 卖出周转材料的分录怎么做
  • 二手固定资产怎么折旧
  • 报税财务报表一定要填吗
  • python的用途
  • MySQL中distinct与group by之间的性能进行比较
  • 公司处置汽车
  • 贷款用途不符合规定有啥危害
  • 不征税收入与免税收入的区别是什么
  • 内账需要哪些单据
  • 税前扣除凭证按照用途分为哪些
  • 会计库存商品属于什么科目
  • 收到预付卡的发票是否可以报销呢?
  • 收到预付卡结算款怎么入账
  • 现金劳务收入会计分录
  • 旅行社代订的机票可以抵扣吗
  • 差旅津贴和差旅补贴需要申报个税吗?
  • 解除职工劳动关系补偿
  • 关于数据库的叙述
  • 启动mysql1067错误
  • windows优化软件
  • 什么是活动目录和域
  • linux动态链接库怎么调用
  • Ubuntu 8.10 Server Ruby 的安装方法
  • win10无u盘装系统教程
  • bootstrap4和3
  • linux find命令的使用
  • excite引擎
  • linux sleep 2
  • nodejs例子
  • shell编程教程
  • node exit
  • 浙江国税咨询电话12306
  • 湖北商铺契税2021年新规
  • 消费税申报详细操作流程
  • 税控发票证书密码是什么
  • 四川社保每年几月份交费
  • 中山税务如何预约
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设