說我們有一個類:Python類:添加動態屬性,方法
class Foo (object):
... def __init__(self,d):
... self.d=d
... def return_d(self):
... return self.d
...和字典:
d={'k1':1,'k2':2}
...和一個實例:
inst=Foo(d)
有沒有辦法動態地將屬性添加到return_d
如此:
inst.return_d.k1
會返回1嗎?
爲什麼'inst.return_d()['k1']'沒有? '.'運算符執行屬性查找,因此無論'return_d'返回什麼,都應該支持屬性查找,可能通過'__getattr__'掛鉤。請注意,您希望'return_d'是一個屬性,但你把它定義爲一個方法,所以這個例子中你的狀態就不會在該帳戶單獨工作。 –
[?訪問字典鍵,如在Python屬性]的部分欺騙(http://stackoverflow.com/q/4984647) –
@Pieter:它會做。這是一個愚蠢的例子,只是想更多地瞭解課堂以及我能做什麼和不能做什麼。 – root