本系列将会陆续整理分享一些的Python内置函数。
-
通过百度网盘获取:
链接:https://pan.baidu.com/s/11x9_wCZ3yiYOe5nVcRk2CQ?pwd=mnsj
提取码:mnsj
-
前往GitHub获取:
https://github.com/returu/Python_built-in_functions
getattr(object, name, default)
-
object:是要操作的对象; -
name:是要获取的属性名称,以字符串形式提供; -
default:可选参数,用于指定如果属性不存在时返回的默认值。如果未提供且属性不存在,将引发 AttributeError。
返回值:
-
如果属性存在,则返回该属性的值。 -
如果属性不存在且提供了 default 参数,则返回 default 的值。 -
如果属性不存在且未提供 default 参数,则抛出 AttributeError。
下面是一些使用 getattr() 函数的示例:
-
示例 1:获取对象的属性值
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
p = Person("Alice", 30)
# 获取属性值
name = getattr(p, 'name')
print(name)
# 输出: Alice
# 获取一个不存在的属性
address = getattr(p, 'address', "Unknown")
print(address)
# 输出: Unknown
-
示例 2:获取对象的方法
getattr() 函数不仅可以用于获取对象的属性,还可以用于获取类的方法,包括普通方法、类方法和静态方法。
class Person:
def __init__(self, name):
self.name = name
def greet(self):
return f"Hello, my name is {self.name}."
p = Person("Alice")
# 获取类的方法
greet_method = getattr(p, 'greet')
print(greet_method())
# 输出: Hello, my name is Alice.


本篇文章来源于微信公众号: 码农设计师