私は、クラスのインスタンスメソッドに属性としてアクセスすることが(厳密には必要ありませんが)非常に役立つ状況にあります。 (これは、getattrを使用してディクショナリの戻り値を設定するAPIのためのもので、細かいことを台無しにしたくありません)
@attribute
デコレータですが、見つかりません(PythonまたはDjango))
TL; DR:
どうやってこれを作るのですか:
class foo:
bar = "bar"
def baz(self):
return "baz"
これを行う:
>>> f = foo()
>>> f.baz
"baz"
(明確にするために編集)これの代わりに:
>>> f = foo()
>>> f.baz
<bound method foo.baz of <__builtin__.foo instance at 0x...>>
@property
デコレータ。
class foo(object):
bar = "bar"
@property
def baz(self):
return "baz"
property のデコレータ形式を見てください。
@property
def baz(self):
return "baz"