10 一切皆对象
# 模块,对象=包裹
from utils import db
# 函数,对象=包裹
func = db.show
# 类, 对象=包裹
db.Info
# 类对象,对象=包裹
obj = db.Info()
db.show.__doc__
ret = getattr(db.show, "__doc__")
print(ret)
反射本质上就是通过字符的形式去操作对象/模块中的成员。
class Foo:
def __init__(self, name, age):
self.name = name
self.age = age
obj = Foo("中国", 88)
# 传统方式获取
obj.name
obj.age
# 通过反射进行获取
v1 = getattr(obj, "name")
v2 = getattr(obj, "age")