我想知道是否有一种方法可以获取 init 内部的类实例变量。
我已经看到一些东西可以验证我所寻找的内容,只是我在寻找一种获取实例变量而不是类变量的方法。 链接的主题:Looping over class variable's attributes in python
说我有一个课程,例如:
class Identity:
table = "tb_identity"
def __init__(self, id="", app_name="", app_code="", state="", criticality=""):
self.id = id
self.app_name = trigram_name
self.app_code = trigram_irt
self.state = state
self.criticality = criticality
我希望能够获得具有以下实例变量名称的列表:
["id","app_name","app_code","state","criticality"]
带有诸如:
members = [getattr(Identity,attr) for attr in dir(Identity) if not attr.startswith("__")]
我只会得到“ tb_identity”,甚至没有“ table”。 但这不是主要问题,我正在寻找类似的东西:
["id","app_name","app_code","state","criticality"]
是否有任何适当的方法可以在 init 中获取这些变量?
谢谢您的时间。
编辑:有没有这样做的任何方法?
答案 0 :(得分:0)
尝试
class Identity:
table = "tb_identity"
def __init__(self, id="", app_name="", app_code="", state="", criticality=""):
self.id = id
self.app_name = 'trigram_name'
self.app_code = 'trigram_irt'
self.state = state
self.criticality = criticality
print(self.__dict__.keys())
i = Identity()
输出
dict_keys(['id', 'app_name', 'app_code', 'state', 'criticality'])