pythonのpropertyの使い方
概要
- オブジェクト指向のプロパティ(メンバ変数の呼び出しや値の代入)を関数でラップすることでより安全に扱うもの
具体例
class Person:
def __init__(self, name):
self._name = name
@property
def name(self):
return self._name
@name.setter
def name(self, value):
if not isinstance(value, str):
raise TypeError("名前は文字列でなければなりません")
self._name = value
person = Person("Alice")
print(person.name) # Alice
person.name = "Bob"
print(person.name) # Bob