getter可以用于访问对象中的私有属性。
setter可以用于修改对象中的私有属性。具体操作看如下代码
#!usr/bin/env python
#-*- coding:utf-8 -*-
"""
@author:doulihang
@file: test.py
@time: 2019/07/09
"""
class Person(object):
def __init__(self, name, age):
self.__name = name
self.__age = age
# 访问器 - getter方法,用于访问私有属性self.__name
# @property
def name(self):
return self.__name
# 访问器 - getter方法,用于访问私有属性self.__age
@property
def age(self):
return self.__age
# 修改器 - setter方法,用于修改私有属性self.__age
@age.setter
def age(self, age):
self.__age = age
def play(self):
if self._age <= 10:
print('%s正在玩五子棋.' % self.__name)
else:
print('%s正在玩英雄联盟.' % self.__name)
def main():
#对象实例化
person = Person('野草', 8)
#访问私有属性self.__name
print(person.name())
#输出私有属性self.__age修改前的结果
person.play()
#修改私有属性self.__age
person.age = 22
# 输出私有属性self.__age修改后的结果
person.play()