我有一個Python類存儲某些領域並具有一定的屬性,如如何從對象到字典進行自定義轉換?
class A(object):
def __init__(self, x, y):
self.x = x
self.y = y
@property
def z(self):
return self.x+1
做什麼樣的變化,我需要做的類,這樣我可以做
>>> a = A(1,5)
>>> dict(a)
{'y':5, 'z':2}
,我指定我想返回y
和z
?我不能僅僅使用a.__dict__
,因爲它將包含x
而不是z
。我希望能夠指定任何可以通過__getattribute__
訪問的內容。
難道你不能改寫是.__ dict__嗎? – tlunter
'a .__ dict__'是Python類如何存儲字段的一個非常重要的部分,我很不情願搞亂它。 – murgatroid99