#客户端读取修改私有变量@#创建属性classCritter(object):"""A virtual pet"""def__init__(self,name):print("A new critter has been born!")
self.__name = name
@propertydefname(self):return self.__name
@name.setter
defname(self,new_name):if new_name =="":print("A critter's name can't be the empty string")else:
self.__name = new_name
print("Name change successful!")deftalk(self):print("\nHi,i'm",self.name)
crit = Critter("Poochie")
crit.talk()#在类外部直接访问私有变量nameprint("\nMy critter's name is:",end =" ")print(crit.name)#类外部直接修改私有变量name,传递参数给name.setterprint("\nAttempting to change my critter's name to Randolph...")
crit.name ="Randolph"
A new critter has been born!
Hi,i'm Poochie
My critter's name is: Poochie
Attempting to change my critter's name to Randolph...
Name change successful!
#客户端读取修改私有变量@#创建属性class Critter(object): """A virtual pet""" def __init__(self,name): print("A new critter has been born!") self.__name = name @property def name(self...