python hasattr_Python hasattr()函数

python hasattr_Python hasattr()函数版本 E Projects testTool gt pythonversio 6 2 定义先看一下官网是如何定义的 hasattr object name Thearguments TheresultisT sattri

版本

E:\Projects\testTool>python –version

Python 3.6.2

定义

先看一下官网是如何定义的:

hasattr(object, name)

The arguments are an object and a string. The result is True if the string is the name of the object’s attributes, False if not. (This is implemented by calling getattr(object, name)) and seeing whether it raises an AttributeError or not)

大致翻译一下:

参数是一个对象和一个字符串,如果字符串是对象的属性值,函数返回True,反之返回False.(这是通过调用getattr(object, name)函数,并判断是否抛出AttributeError错误实现的)。

总结一下:

hasattr()函数用于判断对象是否包含对应的属性。

1.判断是否包含变量

定义一个类,在其中添加变量

>>> class clsTest():

… value = 5

判断clsTest()中是否包含value的值

>>> hasattr(clsTest(), ‘value’)

True

2.判断是否包含函数

在刚才定义好的类中添加一个函数

>>> class clsTest():

… value = 5

… def func(self):

… return 1 + 2

判断clsTest()中是否包含函数的值:

>>> hasattr(clsTest(), ‘func’)

True

3.判断是否包含类自带属性

使用dir()查看clsTest类中有哪些属性

>>> dir(clsTest)

[‘__class__’, ‘__delattr__’, ‘__dict__’, ‘__dir__’, ‘__doc__’, ‘__eq__’, ‘__format__’, ‘__ge__’, ‘__getattribute__’, ‘__gt__’, ‘__hash__’, ‘__init__’, ‘__init_subclass__’, ‘__le__’, ‘__lt__’, ‘__module__’, ‘__ne__’, ‘__new__’, ‘__reduce__’, ‘__reduce_ex__’, ‘__repr__’, ‘__setattr__’, ‘__sizeof__’, ‘__str__’, ‘__subclasshook__’, ‘__weakref__’, ‘func’, ‘value’]

试着查看是否包含__class__属性的值:

>>> hasattr(clsTest(), ‘__class__’)

True

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

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

(0)
上一篇 2026年3月17日 上午9:22
下一篇 2026年3月17日 上午9:22


相关推荐

发表回复

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

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