我们可以列出一个类的所有属性(仅属性)?
如果有的话,此类例如:
class c1():
def __init__(self, x, y):
self.fx = x
self.fy = y
self.fz = 0
def fun1():
return self.fx
使用dir(c1),我们可以获得包含类的所有对象的完整列表,包括属性,但是我们不知道方法和属性的区别。
我认为这会起作用:
type( dir(obj1)[-1] )
#[-1]将是最后一个属性,但是类型返回一个字符串。
答案 0 :(得分:2)
您可以使用__dict__
关键字来访问属性。
class c1():
def __init__(self, x, y):
self.fx = x
self.fy = y
self.fz = 0
def fun1():
return self.fx
obj1 = c1(1,2)
print(obj1.__dict__)
输出
{'fx':1,'fy':2,'fz':0}
答案 1 :(得分:1)
使用__dict__.keys()
:
class c1():
def __init__(self, x, y):
self.fx = x
self.fy = y
self.fz = 0
def fun1():
return self.fx
obj1 = c1(1,2)
print(obj1.__dict__.keys())
输出:dict_keys(['fx', 'fy', 'fz'])
您可能还想看看pprint()