个人对特性的理解:

  • 特性将类的方法伪装成字段,访问方法时,以访问字段的形式访问方法
  • 方法伪装成特性之后,可以像字段一样获取值及重新设置值,重新设置值需要重新写方法
  • 以下例子中,对于 one.end 系统自动执行第一个end方法,对于 one.end = 29.9 系统自动自行第二个end方法,由此可以看出,对于获取值或者重新设置值,只是系统执行的方法不同 ,而且在第二个end方法中,也可以为其他字段设置值,关键在于在这个方法中写了什么。
  • 方法中没有别的参数
# 特性
# 把方法伪装成字段,以字段的形式访问
# 既然把方法伪装成字段,而字段可以重新设置值,那么如何对伪装成字段的方法重新设置值


class Information(object):
    def __init__(self,name,age):
        self.name = name
        self.age = age

    def start(self):
        print(self.name)

    @property
    def end(self):
        print(self.age)

    @end.setter
    def end(self,new_age):
        self.age = new_age
        self.name = new_age

one = Information('ALEX','29')
# 通过对象来访问方法
one.start()
# 把方法伪装成字段,以字段的形式访问
one.end # 自动执行第一个end方法
one.end = 29.9  # 自动执行第二个end方法
one.end

 类之特性

相关文章:

  • 2021-11-19
  • 2022-02-23
  • 2021-09-26
  • 2021-11-09
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-13
猜你喜欢
  • 2021-07-10
  • 2021-05-31
  • 2021-11-01
  • 2021-10-26
  • 2022-03-05
相关资源
相似解决方案