python中hasattr()函数用法详解

python中hasattr()函数用法详解python 中 hasattr 函数用法详解

hasattr() 函数用来判断某个类实例对象是否包含指定名称的属性或方法。

  • 无论是属性名还是方法名,都在 hasattr() 函数的匹配范围内。
  • 通过该函数判断实例对象是否包含该名称的属性或方法,但不能精确判断,该名称代表的是属性还是方法。

hasattr() 函数源码如下:

def hasattr(*args, kwargs): # real signature unknown """ Return whether the object has an attribute with the given name. This is done by calling getattr(obj, name) and catching AttributeError. """ pass

语法格式如下:

hasattr(obj, name)
  • obj 指的是某个类的实例对象
  • name 表示指定的属性名或方法名
  • return    True 或者 False

示例代码:

class Test(object): def __init__(self): self.name = "张三" self.age = 25 def say(self): print("I love study!") obj = Test() print(hasattr(obj, "name")) print(hasattr(obj, "age")) print(hasattr(obj, "say")) print(hasattr(obj, "new_name")) 

运行结果:

python中hasattr()函数用法详解

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/230242.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux 于 shell 变数 $#,$@,$0,$1,$2 含义解释:

    Linux 于 shell 变数 $#,$@,$0,$1,$2 含义解释:

    2022年1月12日
    56
  • 四旋翼飞行器结构和原理「建议收藏」

    四旋翼飞行器结构和原理前言:前年做电赛时留下的一套四旋翼飞行器如今只剩下四个旋翼和电机(不知道被谁给拆了,组装零件找不到了),趁着国庆几天假期,希望能够快速的将其重新DIY出来。其中控制和驱动板卡可以暂时先由面包板焊接出来,等验证成功能飞的起来时在重新设计集成电路板来实现整机。

    2022年4月6日
    54
  • pytest运行_ios12清除缓存

    pytest运行_ios12清除缓存前言pytest运行完用例之后会生成一个.pytest_cache的缓存文件夹,用于记录用例的ids和上一次失败的用例。方便我们在运行用例的时候加上–lf和–ff参数,快速运行上一

    2022年7月31日
    6
  • DNS解析过程详解「建议收藏」

    DNS解析过程详解「建议收藏」转载原文地址:http://blog.chinaunix.net/uid-28216282-id-3757849.html先说一下DNS的几个基本概念:一.根域就是所谓的“.”,其实我们的网

    2022年8月1日
    5
  • idea设置注解格式_idea添加类注释

    idea设置注解格式_idea添加类注释开发过程中经常看到源码中的注释,感叹大佬的注释为何写得那么清新脱俗,决定简单研究一下IDEA中的注释本文主要分为三个部分:注释的显示状态切换如何在注释中添加超链接注释状态切换:之前看大佬们的注释都是:而我的注释:为何源码中别人的注释和自己写的注释显示效果完全不一样呢其实是设置问题而已(今天才知道…尴尬了)点击图中的铅笔就可以切换为注解源码,效果如下:再点击图中左上角的图标就切换回了注释的阅览视图…

    2022年9月27日
    6
  • 剑指Offer面试题:9.打印1到最大的n位数

    一题目:打印1到最大的n位数二不考虑大数解法三字符串模拟算法解法解决这个问题需要表达一个大数。最常用也是最容易的方法是用字符串或者数组表达大数。该算法的步骤如下:Step1.把字符串中的

    2021年12月19日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号