技术宅程序员Python 运维

python高级编程

2017-06-05  本文已影响613人  一只写程序的猿

1.==,is的使用

总结

·is是比较两个引用是否指向了同一个对象(引用比较)。

·==是比较两个对象是否相等。

2.深拷贝、浅拷贝

1.浅拷贝

浅拷贝是对于一个对象的顶层拷贝

通俗的理解是:拷贝了引用,并没有拷贝内容

2.深拷贝

深拷贝是对于一个对象所有层次的拷贝(递归)

进一步理解拷贝

3.拷贝的其他方式

浅拷贝对不可变类型和可变类型的copy不同

·分片表达式可以赋值一个序列

·字典的copy方法可以拷贝一个字典

·有些内置函数可以生成拷贝(list)

·copy模块中的copy函数

3.属性property

1.私有属性添加getter和setter方法

2.使用property升级getter和setter方法

运行结果: 运行结果:

3.使用property取代getter和setter方法

@property成为属性函数,可以对属性赋值时做必要的检查,并保证代码的清晰短小,主要有2个作用

·将方法转换为只读

·重新实现一个属性的设置和读取方法,可做边界判定

运行结果: 运行结果:
上一篇 下一篇

猜你喜欢

热点阅读