深浅拷贝
1.流程控制语句2.计算机基础3.编程语言介绍4.python语言介绍5.python解释下载与安装6.python知识补充+语法入门7.基本数据类型8.基本运算符9.用户交互 输入输出方法10.字符编码11.可变与不可变数据类型12.文件操作的基本流程13.文件的基本操作14.异常处理
15.深浅拷贝
16.函数定义和调用17.函数的调用18.名称空间和作用域19.装饰器20.迭代器和三元运算符21.模块与包22.random、os、json模块23.hashlib、time模块24.正则25.datetime、sys、logging模块26.正则re模块27.常用的内置函数28.初识面向对象29.面向对象进阶30.封装、继承、多态31.常用魔法方法和元类32.网络编程初识33.网络编程进阶34.并发编程之多进程35.并发编程之多线程36.并发编程之协程深浅拷贝
1.浅拷贝
-
浅拷贝是指创建一个新对象,并将原始对象的元素复制到新对象中
# num_list = [1, 2, [3, 4]] # # 使用浅拷贝创建拷贝对象 # copy_list = copy.copy(num_list) # # # 修改原对象中的可变数据类型 # num_list[2].append(5) # # print("原对象:", num_list) # [1,2,[3,4,5]] # print("拷贝对象:", copy_lsit)# [1,2,[3,4,5]] # 两个列表还是引用同一个内存地址,当num_list改变时,copy_list也随之改变
2.深拷贝
- 深拷贝是创建了一个新的对象,该对象与原对象完全独立
- 拷贝后我们对新对象和老对象进行内容修改,完全不会互相影响,因为他们各自独立
# num_list = [1, 2, [3, 4]]
# # 使用深拷贝创建拷贝对象
# copy_list = copy.deepcopy(num_list)
#
# # 修改原对象中的可变数据类型
# num_list[2].append(5)
# print("原对象:", num_list) # [1,2,[3,4,5]]
# print("拷贝对象:", copy_lsit)# [1,2,[3,4]]
# 深拷贝后copy_list申请了一块新的内存地址存放值,原列表更改和新列表没有关系,内存指向不一样了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)