1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
# -*- coding: utf-8 -*- """ Created on Sun Nov 13 23:19:03 2016 @author: toby """ #知识点:只读特性和只写特性 class Province( object ): #增加一个object继承新式类
memo = 'One of China\'s 23 provinces' #静态字段
def __init__( self ,name,capital,leadership,flag):
self .Name = name #动态字段
self .Capital = capital #动态字段
self .Leadership = leadership #动态字段
self .__Thailang = flag #定义一个私有字段
#只读,不能改
@ property
def Thailang( self ):
return self .__Thailang #读取私有字段值
#可写,改上面的私有字段,如果只想只读,那么不必写这方法就可以了
@Thailang.setter #这个装饰器的名称为上面函数的名称
def Thailang( self , value):
self .__Thailang = value #修改私有字段的值
if __name__ = = "__main__" :
#实例化两个对象,对象名分别是:hb、sd
japan = Province( 'riben' , 'shjiazhuang' , 'liyang' , True ) #值True传递给self.__Thailang
print japan.Thailang #打印私有字段原来的值
japan.Thailang = False #修改私有字段的值为false
print japan.Thailang #再次打印出来看看是否修改成功
|
本文转自 TtrToby 51CTO博客,原文链接:http://blog.51cto.com/freshair/1874269