python一步高级编程

时间:2022-05-25 03:57:04

1.==,is的使用

python一步高级编程
python一步高级编程

总结

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

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

2.深拷贝、浅拷贝

1.浅拷贝

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

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

python一步高级编程
python一步高级编程

2.深拷贝

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

python一步高级编程
进一步理解拷贝
python一步高级编程
python一步高级编程
python一步高级编程
python一步高级编程
python一步高级编程
python一步高级编程

3.拷贝的其他方式

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

python一步高级编程
python一步高级编程

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

python一步高级编程

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

python一步高级编程

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

python一步高级编程

·copy模块中的copy函数

python一步高级编程

3.属性property

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

python一步高级编程
python一步高级编程

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

python一步高级编程
运行结果:
python一步高级编程
python一步高级编程
运行结果:
python一步高级编程

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

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

·将方法转换为只读

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

python一步高级编程
运行结果:
python一步高级编程
python一步高级编程
python一步高级编程
运行结果:
python一步高级编程

学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入学习交流群
626062078,我们一起学Python!