是否有可能找出在类__init__
方法中设置哪些变量(如果有)而不实例化该类并检查其__dict__
?
例如,如果您使用名为mod
的类加载名为Class
的模块,则可以使用vars(mod.Class)
获取该类的属性和方法,而无需创建它的实例。如果您创建Class
的实例,您还可以通过查看mod.Class().__dict__
或使用vars(mod.Class())
找出实例化时设置的变量。
我想知道你是否可以在没有实例化的情况下获得类变量。我试图检查任意类/类型的变量。 inspect
模块没有提供这样的功能。
答案 0 :(得分:0)
使用Python中的type keyword可以做到这一点。那里有这样的示例:
>>> class X:
... a = 1
...
>>> X = type('X', (object,), dict(a=1))