property使用方法一
class A:
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):
print("名字只能为字符串")
else:
self.__name = value
@name.deleter
def name(self):
self.__name = None
a = A("dasd")
print(a.name)
a.name = 5
print(a.name)
del a.name
print(a.name)
property使用方法二
class A:
def __init__(self, name):
self.__name = name
def get_name(self):
return self.__name
def set_name(self, value):
if not isinstance(value, str):
print("名字只能为字符串")
else:
self.__name = value
def del_name(self):
self.__name = None
NAME = property(get_name, set_name, del_name)
a = A("dasd")
print(a.NAME)
a.NAME = 5
print(a.NAME)
del a.NAME
print(a.NAME)
print(a.NAME.__doc__)