Python hasattr()函数

hasattr()是 Python 内置函数之一,用于检查一个对象是否具有指定的属性或方法。

hasttr()函数语法

hasattr(object, name)

其中:

  • object:需要检查的对象。
  • name:要检查的属性或方法的名称,可以是字符串或标识符。

如果对象具有指定的属性或方法,则返回True,否则返回False;此功能是通过调用getattr(object, name)看是否有AttributeError异常来实现的。

hasattr()函数示例

例如,假设有一个类Person,它有一个名为name的属性和一个名为say_hello()的方法。可以使用hasattr()检查一个实例person是否具有这些属性或方法:

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

# 检查实例是否具有方法
print(hasattr(person, "say_hello")) # True
print(hasattr(person, "say_goodbye")) # False

可以看到,在上面的示例中,hasattr()函数分别检查了person实例的name属性和say_hello()方法,返回了True,表明该实例确实具有这些属性和方法。

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/python-built-in-functions/python-hasattr.html

分类: 计算机技术
推荐阅读:
Python获取操作系统类型 在Python中,你可以使用platform模块来获取操作系统类型。具体来说,你可以使用platform.system()来获取当前操作系统的名称。
Golang函数的多返回值 Golang可以说是少有支持多返回值的静态编程语言,并且可以给返回值命名,这在有的时候非常好用;
配置Nginx实现屏蔽爬虫IP 防止爬虫采集绝对是一个站长需要做的事;且不说站内资源被爬走,单是爬虫采集时消耗的服务器资源可能就够很多站长心疼了。
Matlab中如何表示无穷大 在MATLAB中,您可以使用关键字inf(不区分大小写)来表示正无穷大,-inf表示负无穷大。
Rust解析TOML,结构体序列化和反序列化 在Rust中,可以使用标准库中的toml模块来解析和生成TOML格式的数据;serde与toml模块集成,可以将TOML字符串解析为任意Rust结构体,或将rust结构体序列化为TOML格式的字符串。
spim:(parser) Label is defined for the second time 解决方法 在使用QtSpim读取汇编语言文件时提示:Label is defined for the second time on line xx of file xxx main:,出现这个错误是因为你没有在载入文件前初始化你的模拟器;