Python3 list 浅拷贝,深拷贝

简介: Python3 list 浅拷贝,深拷贝

list 浅拷贝,直接赋值形式,修改其中一个list值,两个 list 数据都会变化

list1 = [1, 2, 3, 4]
list2 = list1
print('list1 ', list1)  # list1  [1, 2, 3, 4]
print('list2 ', list2)  # list2  [1, 2, 3, 4]
del list2[0]
print('list1 ', list1)  # list1  [2, 3, 4]
print('list2 ', list2)  # list2  [2, 3, 4]

使用 copy.deepcopy() 实现深拷贝,修改一个 list 数据,其他 list 数据不变

import copy
list3 = [5, 6, 7, 8]
list4 = copy.deepcopy(list3)
print('list3 ', list3)  # list3  [5, 6, 7, 8]
print('list4 ', list4)  # list4  [5, 6, 7, 8]
del list4[0]
print('list3 ', list3)  # list3  [5, 6, 7, 8]
print('list4 ', list4)  # list4  [6, 7, 8]
相关文章
|
19天前
|
运维 Python
【Python】python深拷贝与浅拷贝详解(必须掌握)
【Python】python深拷贝与浅拷贝详解(必须掌握)
|
3天前
|
索引 Python
Python 列表(List)
Python 列表(List)
|
5天前
|
存储 索引 Python
Python中的列表(List) 详解与高级应用
Python中的列表(List) 详解与高级应用
|
5天前
|
存储 算法 数据处理
Python中的列表(List) 类型详解与实战应用
Python中的列表(List) 类型详解与实战应用
|
13天前
|
存储 数据处理 索引
Python基础教程——列表(List)
Python基础教程——列表(List)
|
15天前
|
Python
两个list集合合并成一个python教程 - 蓝易云
在这两种方法中,加号会创建一个新的列表,而extend方法则会在原地修改列表。
17 0
|
19天前
|
Python
【Python 基础】列表(list)和元组(tuple)有什么区别?
【5月更文挑战第6天】【Python 基础】列表(list)和元组(tuple)有什么区别?
|
19天前
|
开发者 Python
【亮剑】Python中`List.append()`方法不起作用的原因及解决方案
【4月更文挑战第30天】本文探讨了Python中`List.append()`方法不起作用的原因及解决方案。问题可能源于变量作用域、可变类型与不可变类型混淆、函数内的局部变量、错误的赋值操作或并发修改。解决方法包括检查变量、确保正确操作列表、使用`global`关键字、避免错误赋值和采用同步机制处理并发问题。理解这些问题对于编写健壮的Python代码至关重要。
|
19天前
|
存储 索引 Python
多数pythoneer只知有列表list却不知道python也有array数组
多数pythoneer只知有列表list却不知道python也有array数组
27 0
|
19天前
|
索引 容器
06-python数据容器-list列表定义/list的10个常用操作/列表的遍历/使用列表取出偶数
06-python数据容器-list列表定义/list的10个常用操作/列表的遍历/使用列表取出偶数