我现在的困惑和想知道的是:
我觉得浅拷贝很危险,例如tmp_list = list(tmp_tuple)之后对tmp_list进行处理很容易影响到tmp_tuple,我刚才在idle上实验了一下,确实如此。
但是浅拷贝确是默认的。
问题1,浅拷贝的经典应用有哪些呢?
问题2,深拷贝在应用中很常见吗?或者说应用广泛吗?
问题3,list str tuple等函数应用广泛吗?可否举例1,2?
谢谢了,没分了,见谅
-------------------------------
Double行动:
原帖分数:20
帖子加分:20
2 个解决方案
#1
1、很典型的一个应用就是元数据共享的应用,比如公司的多个部门可能都持有员工档案,从各个部门的角度看只不过是不同的视图(不同结构的引用),但每个员工都是唯一的,你枪杀一个员工,可能其它部门也能发现该员工消失了;
2、需要获取一份完整拷贝时候,比如你要得到某个时刻所有员工的snapshot,就只有深度拷贝;
3、内置数据类型是根本,决定语言表现力的关键所在,所有扩展神马的都要以这个为基础,应用场景如数据库的连接适配组件,其中就用列表、元组和字符串代表各种数据库的元素,记录的行、metadata、字段值等。
2、需要获取一份完整拷贝时候,比如你要得到某个时刻所有员工的snapshot,就只有深度拷贝;
3、内置数据类型是根本,决定语言表现力的关键所在,所有扩展神马的都要以这个为基础,应用场景如数据库的连接适配组件,其中就用列表、元组和字符串代表各种数据库的元素,记录的行、metadata、字段值等。
#2
具体情况具体分析
#1
1、很典型的一个应用就是元数据共享的应用,比如公司的多个部门可能都持有员工档案,从各个部门的角度看只不过是不同的视图(不同结构的引用),但每个员工都是唯一的,你枪杀一个员工,可能其它部门也能发现该员工消失了;
2、需要获取一份完整拷贝时候,比如你要得到某个时刻所有员工的snapshot,就只有深度拷贝;
3、内置数据类型是根本,决定语言表现力的关键所在,所有扩展神马的都要以这个为基础,应用场景如数据库的连接适配组件,其中就用列表、元组和字符串代表各种数据库的元素,记录的行、metadata、字段值等。
2、需要获取一份完整拷贝时候,比如你要得到某个时刻所有员工的snapshot,就只有深度拷贝;
3、内置数据类型是根本,决定语言表现力的关键所在,所有扩展神马的都要以这个为基础,应用场景如数据库的连接适配组件,其中就用列表、元组和字符串代表各种数据库的元素,记录的行、metadata、字段值等。
#2
具体情况具体分析