特性一:只读属性

class Bank_acount:
    @property
    def password(self):
        return "123"


andy = Bank_acount()
print(andy.password)   # 123
andy.password = '密碼:456'   #  AttributeError: can't set attribute

Property 特性二:重新实现一个属性的 setter、getter 和 deleter 方法

class Bank_acount:
    def __init__(self):
        self._password = "预设密码 0000"

    @property
    def password(self):
        return self._password

    @password.setter
    def password(self, value):
        self._password = value

    @password.deleter
    def password(self):
        del self._password
        print('del complite')


andy = Bank_acount()  # getter
print(andy.password)  # 预设密码 0000

andy.password = '1234'  # setter
print(andy.password)  # 1234

del andy.password  # deleter
print(andy.password)  # del complite

  

相关文章:

  • 2021-12-18
  • 2022-12-23
  • 2022-12-23
  • 2021-07-22
  • 2022-02-05
  • 2021-11-27
  • 2021-07-17
猜你喜欢
  • 2021-11-29
  • 2021-05-23
  • 2021-07-20
  • 2021-12-30
  • 2022-12-23
  • 2021-11-13
相关资源
相似解决方案