• 面向对象之装饰器


    可以通过@property的getter和setter方法修改对象的属性值。
     
    class Person(object):
     
        def __init__(self, name, age):
           self._name = name
           self._age = age
     
        # 访问器 - getter方法
        @property
        def name(self):
           return self._name
     
        @property
        def age(self):
           return self._age
     
        # 修改器 - setter方法
        @age.setter
        def age(self, age):
           self._age = age
           
        @name.setter
        def name(self, name):
           self._name = name
     
     
        def play(self):
           if self._age <= 16:
              print('%s正在玩飞行棋.' % self._name)
           else:
              print('%s正在玩斗地主.' % self._name)
     
     
    def main():
        person = Person('王大锤', 12)
        person.play()
        person.name = '白元芳'
        person.age = 22
        person.play()
     
    if __name__ == '__main__':
        main()
     
    输出:
    王大锤正在玩飞行棋.
    白元芳正在玩斗地主.
     
     
  • 相关阅读:
    背水一战 Windows 10 (61)
    背水一战 Windows 10 (60)
    背水一战 Windows 10 (59)
    背水一战 Windows 10 (58)
    背水一战 Windows 10 (57)
    背水一战 Windows 10 (56)
    背水一战 Windows 10 (55)
    背水一战 Windows 10 (54)
    背水一战 Windows 10 (53)
    背水一战 Windows 10 (52)
  • 原文地址:https://www.cnblogs.com/myshuzhimei/p/11767344.html
Copyright © 2020-2023  润新知