方法一:

class a:

def __init__(self):

self.__num = 1              #定义一个私有变量(以双下划线开头的是私有变量)

def getNum(self):               #定义get方法

return self.__num

def setNum(self,num_temp):      #定义set方法

if  num_temp ==1 or num_temp == 0:

self.__num = num_temp

num = property(getNum,setNum)

#重点:定义完get和set方法,在下方加一条这样的指令,给__num赋值的时候就可以直接下面这样:

test = a()              #创建一个a的对象

test.num = 100         #执行这句的时候,Python会自动调用setNum方法给__num赋值,

print(test.num)         #同理,这句会自动调用get方法取__num的值

方法二:

class a:

def __init__(self):

self.__num = 1              #定义一个私有变量(以双下划线开头的是私有变量)

@property                    #这个地方原本是get方法,要注意:方法上面加一个

def num(self):                  @property,方法名改成你想要的名字,比如num

if self.__num ==0 or self.__num == 1:

return self.__num

@num.setter                 #这里set方法上方要这样写,num是get的方法名

def num(self,num_temp):       #set的方法名和get一样

if num_temp ==1 or num_temp == 0:

self.__num = num_temp

此时就可以像方法一一样使用了:

test = a()              #创建一个a的对象

test.num = 100         #执行这句的时候,Python会自动调用setNum方法给__num赋值,

print(test.num)         #同理,这句会自动调用get方法取__num的值

最新文章

  1. 【腾讯Bugly干货分享】动态链接库加载原理及HotFix方案介绍
  2. Gradle 下载
  3. OpenCASCADE Hidden Line Removal
  4. UOJ261 【NOIP2016】天天爱跑步
  5. clone github的代码
  6. hasOwnProperty与isPrototypeOf
  7. FileListEntityProcessor
  8. runnable与handler结合使用,其实跟在Thread中的run()中sleep的效果是一样的
  9. Java IO 理解流的概念
  10. 使用dropwizard(5)--加入swagger
  11. 【Vuex】vuex基本介绍与使用
  12. day09 详解内存管理机制
  13. 西风 West Wind Html帮助构建器
  14. 第十二节: 总结Quartz.Net几种部署模式(IIS、Exe、服务部署【借助TopSelf、服务类】)
  15. Flink应用开发-maven导入
  16. Tomcat的目录结构详细介绍(超全)
  17. demo:复制粘贴功能
  18. Eclipse自动部署项目到Tomcat的webapps下的有效方法
  19. 基于nginx实现protobuf RPC
  20. Java实现-每天三道剑指Offre(2-4)

热门文章

  1. Python活力练习Day1
  2. 30分钟连接树莓派到微软云 Azure IoT Hub,并将数据进行可视化
  3. java 超详细面经整理(持续更新)2019.12.19
  4. GO基础之接口
  5. seaborn画出的一些好看的图片
  6. 从0系统学Android--3.7 聊天界面编写
  7. VUE组件 之 高德地图地址选择
  8. LeetCode刷题191124
  9. JS原型链与instanceof底层原理
  10. RTP通用头部扩展