hasattr()是 Python 内置函数之一,用于检查一个对象是否具有指定的属性或方法。
函数语法
hasattr(object, name)
参数:
object:需要检查的对象;name:要检查的属性或方法的名称,可以是字符串或标识符;
如果对象具有指定的属性或方法,则返回True,否则返回False;此功能是通过调用getattr(object, name)查看是否有AttributeError异常抛出来实现的。
可参考:
hasattr() 函数示例
检查某个实例是否有某个属性或方法:
class Person:
def __init__(self, name):
self.name = name
def say_hello(self):
print(f"Hello, my name is {self.name}.")
person = Person("Alice")
# 检查实例是否具有属性
print(hasattr(person, "name")) # True
print(hasattr(person, "age")) # False
if hasattr(person, "say_hello"):
person.say_hello()