python 进制运算 位运算 property的使用 通过property调用私有变量
2017-07-14 13:48
375 查看
进制运算
私有变量
property的作用:相当于把方法进行了封装,开发者在对属性设置数据的时候更方便
property的第一种使用方法
property的第二种方法的使用:
#数字在计算机中使用二进制补码的形式保存的,数字运算按照补码运算才对 #规则 #正数:原码=反码=补码 #负数:反码=符号位不变,其他位取反 # 补码=反码+1 #负数补码转换原码的规则 #原码=补码的符号位不变---->数据位取反---->尾+1 #10进制到2进制的转换 0b是2进制 0o是八进制 0x十六进制 print(bin(10))#0b1010 #2进制到10进制 print(int("101010",2))#42 #10进制到16进制 print(hex(12))#0xc #16进制到16进制 print(int("ff",16))#255 #8进制到10进制 print(oct(10))#0o12 #10进制到8进制 print(int("77",8))#63
私有变量
#为了避免与系统的变量名发生冲突,比如用if做变量名,可以写成if_ #变量前面有一个_,在模块内部使用 #即使用from 模块名 import * #仍然不能访问"_变量" #但是如果将整个模块导入的话就可以使用 #import 模块名 #模块名._变量 #模块名.__变量 # # #名字重整 #若在test.py模块中定义的test类中有一个私有变量__num,若这么访问 import test t=test() t.__num #则不可以使用 # #原因是因为将私有属性的名字改变了,不是__num了 #调用方式 import test t=test() t.__test__num 可以使用 #改变后__类名__属性名 # #简单总结下 # xx:公有变量 # _x:单前置下划线,私有化属性或方法,from somemodule import * 禁止使用 # __xx:双前置下划线,避免与子类中的属性命名冲突,无法再外部直接访问 # —__xx__:双前后下划线,用户名字空间的魔法对象或属性,如__init__ # xx_:单后置下划线,用户避免与python关键字冲突
property的作用:相当于把方法进行了封装,开发者在对属性设置数据的时候更方便
property的第一种使用方法
#property的用法 #第一种: class Test(object): """docstring for Test""" def __init__(self): self.__num = 100 def setNum(self,num): self.__num=num def getNum(self): return self.__num num=property(getNum,setNum) t=Test() print(t.num)#相当于调用了t.getNum() t.num=200#相当于调用了t.setNum(200) print(t.num) #注意:t.num到底是调用getNum()还是setNmu,要根据实际的场景来判断。 #如果是给t.num赋值,那么一定调动setNum() #如果是获取t.num的值,那么就一定调用getNum # #property的作用:相当于把方法进行了封装,开发者在对属性设置数据的时候更方便
property的第二种方法的使用:
#property的用法 #第一种: class Test(object): """docstring for Test""" def __init__(self): self.__num = 100 @property #在num前面加上property,相当于property的名字就是num def num(self): return self.__num @num.setter def num(self,num): self.__num=num t=Test() print(t.num)#相当于调用了t.property t.num=200#相当于调用了t.num.setter print(t.num) #如果是给t.num赋值,那么一定调用num.setter() #如果是获取t.num的值,那么就一定调用num # #property的作用:相当于把方法进行了封装,开发者在对属性设置数据的时候更方便
相关文章推荐
- python 进制运算 位运算 property的使用 通过property调用私有变量
- 反射(四)使用反射机制调用对象的私有方法及成员变量
- 通过反射,如何操作私有成员变量(取/赋值),如何调用私有方法?
- 有关python私有变量使用的例子
- Python2.x 变量的使用调用
- 进制间的转换,以及逻辑运算,位运算在进制间的使用
- Python 中__init__.py的使用(通过包调用方法)
- Python的sys.argv使用说明 通过终端写入环境变量
- Python 中__init__.py的使用(通过包调用方法)
- python中的__new__方法与__init__方法区别与调用;通过使用__new__实现单例模式
- python3 property调用私有方法用法
- spring使用注解通过子类注入父类的私有变量
- Python 中特殊变量/方法命名规则说明(特别是私有变量)及使用实例
- Python 中特殊变量/方法命名规则说明(特别是私有变量)及使用实例
- 反射机制的概述和字节码对象的获取,通过反射获取构造方法并使用;通过反射获取成员变量并使用;通过反射获取私有成员变量并使用;通过反射获取成员方法并使用
- 笔记--ThinkPHP模板的变量使用与运算以及模板函数调用
- JavaSE第六十四讲:使用反射机制调用对象的私有方法、访问对象的私有成员变量
- thrift安装使用——python客户端通过thrift调用hive
- 图文并茂——使用xfire编写webservice,并通过C#调用
- Python(私有变量)类中的特殊方法