Python 获取类的属性
是否有任何通用的方法可以通过类名和实例获取类的属性Python 获取类的属性,python,python-3.x,Python,Python 3.x,是否有任何通用的方法可以通过类名和实例获取类的属性 class A: def __init__(self): self.prop = 1 a = A() for attr, value in a.__dict__.items(): print(attr, value) # prop, 1 为什么上一个示例返回dir属性,但为什么结果不同?dict\uuuuuuuuuuu、\uuuuuuu doc\uuuuuu、\uuuuuuu module\uuuuuuu
class A:
def __init__(self):
self.prop = 1
a = A()
for attr, value in a.__dict__.items():
print(attr, value) # prop, 1
为什么上一个示例返回
dir
属性,但为什么结果不同?dict\uuuuuuuuuuu、\uuuuuuu doc\uuuuuu、\uuuuuuu module\uuuuuuuuuuuuu、…
实际上存在于类中,即使您还没有创建它们。它们是“内置的”
因此,dir
向您显示它们是正常的
实例中的属性存储实例属性
class A:
def __init__(self):
self.prop = 1
a = A()
for attr, value in a.__dict__.items():
print(attr, value)
这将显示实例属性。只有一个实例属性-prop
(self.prop=1
)
这将获得类属性<代码>道具已添加到实例中,因此不在此处
看
要从对象中获取所有属性,包括类属性、基类属性,请使用您希望该属性为您提供什么?>是否有任何通用方法可以通过类名和实例获取类的属性我不明白这一点,我是说在第二个示例中如何获取类属性(我想获取
prop,1
)?@Opsa,在第二个示例中,您要求获取类属性,但prop
仅存在于这个类实例中,这就是为什么它不存在的原因prop
在第二个示例中不是类属性。这仍然是一个实例的属性。谢谢你的回答,但是告诉我如何像按实例一样获得class
属性?
class A:
def __init__(self):
self.prop = 1
a = A()
for attr, value in a.__dict__.items():
print(attr, value)
for attr, value in A.__dict__.items():