位置: 编程技术 - 正文

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

  • 税务金三系统是什么?
  • 本月发生费用未支付会计处理
  • 一般纳税人金税盘全额抵扣分录
  • 个体工商户可以开发票吗
  • 税务局代开发需要盖章吗
  • 多余的实收资本可以转到其他应付款吗
  • 存放中央银行款项名词解释
  • 小规模纳税人的增值税账务处理
  • 联营企业股利收入
  • 代扣代缴车船税手续费比例
  • 房地产公司将自建自用房产出售 土地增值税
  • 生产过程中报废怎么核算成本
  • 没有收入要做应交税费的会计分录
  • 全年亏损,但季度预交企业所得税,汇算时怎么调平
  • 机构信用代码证是三证合一里的吗
  • 个税多申报了实发没有这么多,如何处理
  • 营业外支出增值税率是多少
  • 购买的商品入库会计分录怎么写
  • 停车场领的定额发票要怎么报税?
  • 期末结转生产成本会计分录
  • 外籍人员工资个税
  • 营改增建筑工程怎么计算举例
  • 完工百分比法确认收入应注意的问题
  • 电脑上网速度慢的原因及解决方法
  • 预付账款是负数有什么税收风险
  • 长期待摊费用的概念
  • windows7旗舰版好用吗?
  • 系统盘怎么重装系统win7
  • php图片识别处理归类
  • 计算机视觉姿势评估英语
  • 最详细的世界地图
  • 如何使用openAI总结小说内容
  • 跨域问题是什么
  • 视同销售账务处理如何做?
  • 个人提供劳务需要开发票吗
  • 客户赔偿款放在哪里
  • 注销的公司需要清算吗
  • dedecms转eyoucms
  • dedecms进入数据库
  • 小规模纳税人成本含税吗
  • 房地产开发间接费用和开发费用的区别
  • 运输费抵扣进项税怎么算
  • 通货膨胀率怎么求
  • 财政应返还额度账务处理
  • 资金过账属于洗钱吗
  • 购入固定资产的增值税计入成本吗
  • 财务费用如何调到筹资费用
  • 企业收到的政府补助属于
  • 红字发票的开具需要把开始的发票取回作废吗?
  • 应付账款增值税如何挂账
  • 申报高新技术企业专利有什么要求
  • 回购股票会导致所有者权益减少吗
  • 出口的样品如何销售
  • sql server 1222解决
  • win7 64位系统插入磁盘提示“将磁盘插入驱动器”的解决方法
  • win10蓝屏怎么修复系统
  • winxp关闭自动更新方法
  • 电脑ems是什么意思啊
  • spamsub.exe - spamsub进程是什么文件
  • ubuntu怎么安装程序
  • Win8.1不借助第三方软件怎么给文件夹加密并隐藏
  • linux系统如何禁用光驱
  • win8无法更新到win10
  • Linux系统中如何复制虚拟机
  • linux sh
  • linux有两个ip
  • uploadify文件上传
  • 64位Win7环境下vs2013配置opengl
  • jquery自定义组件
  • javascript resources
  • 使用jquery实现的项目
  • node.js基础入门
  • js层级选择器
  • jquery图表
  • 呼和浩特市契税2021年新规
  • 亦庄地税局税务局营业大厅
  • 农产品进项税额核定扣除
  • 苏州税务局下班时间
  • 防疫物资开票免税吗
  • 深化财税体制改革完善税收制度心得体会
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设