私はこれを持っています
#!/usr/bin/env python
import math
class myclass(object):
def __init__(self,radius):
self.radius = radius
@property
def area(self):
print myclass.area, type(myclass.area)
return math.pi * ( self.radius ** 2)
@area.setter
def area(self,value):
print myclass.area, type(myclass.area)
pass
@area.deleter
def area(self):
print myclass.area, type(myclass.area)
del myclass.area
if __name__ == '__main__':
c = myclass(5.4)
c.area
c.area = 65
del c.area
これは与える:
$ ./propertytest.py
<property object at 0x7ff0426ac0a8> <type 'property'>
<property object at 0x7ff0426ac0a8> <type 'property'>
<property object at 0x7ff0426ac0a8> <type 'property'>
質問:
プロパティ オブジェクトへのarea
アクセス方法を見てください: c.area
. area
ドット演算子の右側に表示されます。プロパティ オブジェクトがクラス インスタンス オブジェクトを正しいインスタンス メソッドにバインドし、結果を計算するために使用する特別なメソッドはどれですか? プロパティはどのように機能しますか?