命名有约定吗:
1.- 属性方法:在下面的例子中,“def get_number(...)”。这是个好名字吗?应该是另外一个吗?
2.- setter:在下面的示例中“get_number.setter”。它总是
3.- setter 方法:在下面的示例中:“def number (...)”。使用变量名作为方法可以吗
class Contact:
def __init__(self, in_number):
self._number = in_number
@property
def get_number(self):
return self._number
@get_number.setter
def number(self, value):
self._number = value
我在文档中没有找到它。
回答我的问题:
class Contact:
def __init__(self, in_number):
self._number = in_number
@property
def my_number(self): #1
return self._number
@my_number.setter #2
def my_number(self, value): #3
self._number = value
esther = Contact(6)
print(esther.my_number)
esther.my_number = 8
print(esther.my_number)
#1 这个方法名称可以是任何你想要的,只要它对于检索私有变量的值有意义。
#2 @setter 必须与属性方法同名
#3 setter 方法可以根据需要命名,但为了对用户有意义,请使用与 @property 方法相同的名称