私は今日、伝統的な「何かがうまくいくまでランダムなことを試す」方法で、pythonの学習を行うことにしました。
クラス、次にプロパティについて読み始め、自分で作成しようとしました。ほとんどの例、およびこのサイトの質問からの例でさえ、次のようにプロパティを定義します。
class C(object):
def __init__(self):
self._x = None
@property
def x(self):
"""I'm the 'x' property."""
return self._x
@x.setter
# etc. taken from the python tutorial
テキスト エディターで「@pro」と入力し始めてタブを押すと、次のように完了します。
# ... Class stuff ...
@def foo():
doc = "The foo property."
def fget(self):
return self._foo
def fset(self, value):
self._foo = value
foo = property(**foo())
これらは同じことを行いますか?もしそうなら、どちらを使用すべきですか?