如何在Python中获取类的参数名称?
如何在Python中获取类的参数名称?
这个问题在这里已经有答案了:
我正在尝试创建一个类,其中self
属性是包含在__init__
中的所有参数的列表。
例如:
class thing: def __init__(self,x,y=None,fav_animal=None): self.x = x if y is None: self.y = None else: self.y = y if y is None: self.fav_animal = None else: self.fav_animal = fav_animal self.arg_list = 'some code here?' def args(self): print(self.arg_list)
我正在尝试提供一种解决方案,使函数args(self)
可以自动返回属性名称列表,即[x,y,fav_animal]
。我可以手动设置self.arg_list = [x,y,fav_animal]
,但我希望每次调用__init__
时自动发生。
如果我通过列表添加来做到这一点,例如:
class thing: def __init__(self,x,y=None,fav_animal=None): arg_list = [] self.x = x arg_list.append(self.x) # etc... self.arg_list = arg_list
该函数将返回给参数的值,而不是所需的名称。
为了背景说明,我想这样做的原因是因为我将在多个项目中使用此类事物,我希望能够添加参数到__init__
中而不必手动更新列表。
非常感谢!
admin 更改状态以发布 2023年5月23日