Python getattr()函数

getattr()函数是 Python 内置函数之一,用于获取一个对象的指定属性值。

getattr()函数语法

getattr()函数的语法如下:

getattr(object, name[, default])

其中:

  • object表示要获取属性的对象;
  • name表示要获取的属性的名称;
  • default是可选参数,表示属性不存在时的默认返回值;

注意,当使用getattr()函数获取属性时,如果属性不存在,会触发AttributeError异常,除非提供了default参数作为备选返回值。

getattr()函数示例

下面是一些使用getattr()函数的示例:


class MyClass:

    def __init__(self):
        self.x = 123

    def myprint(self,msg):
        print(msg)

obj = MyClass()

# 获取 obj.x 的值
val = getattr(obj, 'x')
print(val)  # 输出 123

# 获取 obj.myprint
val = getattr(obj,'myprint')
#调用 obj.myprint 函数
val("hello world")

# 获取obj.myprint123 ,属性不存在,缺省值为 print
val = getattr(obj,'myprint123',print)
val("3.14159")

# 获取 obj.y 的值,如果不存在则返回默认值 0
val = getattr(obj, 'y', 0)
print(val)  # 输出 0

# 获取 obj.y 的值,因为不存在,且未定义缺省值
# 将触发 AttributeError 
val = getattr(obj, 'y')

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

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

分类: 计算机技术
推荐阅读:
使用pip安装Python PIL库的正确方法 正确使用pip工具安装Python中PIL库的方法如下:
使用pyi-bindepend工具查看EXE文件的依赖库 pyi-bindepend.exe工具是PyInstaller的一个附属工具,其功能是获得EXE文件运行时需要的依赖文件,当丢失这些文件时,程序无法运行。
Rust:variable does not need to be mutable警告解决方法 在Rust中,当你使用了mut关键字声明变量,但你后面的代码并没对该关键字进行修改,则rust编译器会产生 variable does not need to be mutable 的警告提示;
Python将16进制HASH转换成二进制 将16进制的Hash(比如MD5、SHA1等值)转换位二进制的字符串其实很容易,只需要掌握这几个函数:
Rust实现字符串sha1、sha256、sha512加密 本文将在Rust语言中使用sha1、sha256、sha512等安全散列算法对字符串进行加密;
C语言计算数组元素数量 使用sizeof()函数计算整个数组的内存占用大小,再计算单个元素的内存占用大小;以总内存占用大小除以单个元素的内存占用大小,得到的就是元素数量;