如您所见,函数full_name返回一个包含人员名字和姓氏的字符串。
什么
@property装饰呢,就是声明它可以访问就像是一个普通的属性。
这意味着您可以
full_name像调用成员变量而不是函数一样进行调用,如下所示:
name = person.full_name
代替
name = person.full_name()
您还可以定义如下的setter方法:
@full_name.setterdef full_name(self, value): names = value.split(' ') self.first_name = names[0] self.last_name = names[1]
使用此方法,您可以这样设置人员全名:
person.full_name = 'John Doe'
代替
person.set_full_name('John Doe')
PS上面的设置器只是一个示例,因为它仅适用于由两个用空格分隔的单词组成的名称。在现实生活中,您将使用更强大的功能。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)