python列表copy()方法浅拷贝的用法和开发场景

列表copy()方法描述

python内置的列表list的类实例方法copy()可以用来对调用对象进行浅拷贝,即复制一个值一模一样的列表,但计算机的为变量列表所分配的内存地址并不一样,即修改拷贝得到的列表并不会修改原来的列表,这与列表的直接赋值给一个新的变量的方式不同。


列表copy()方法的开发场景简介

在大数据的挖掘之中,需要使用算法对数据进行处理,但是,挖掘的过程中往往是需要不断地去尝试的,或者调节参数的,那么,为了不让原始的样本数据在数据挖掘过程中发生改变,就可以使用copy()方法来进行浅拷贝。


列表copy()语法及参数

list2 = list1.copy()

python列表list的内置方法copy()并不接受参数。


列表copy()返回值

一个与调用对象的值一模一样的新的列表list。


列表copy()方法实例代码

>>> list1 = ['笨鸟工具','x1y1z1.com']
>>> list2 = list1.copy()
>>> list2
['笨鸟工具', 'x1y1z1.com']
>>> list2.append('python全栈')
>>> list2
['笨鸟工具', 'x1y1z1.com', 'python全栈'] #修改经过copy()浅拷贝的列表list2,原列表list1的值并未被修改
>>> list1
['笨鸟工具', 'x1y1z1.com']
>>> id(list1) #通过copy()对列表进行浅拷贝,计算机分配的id地址并不一样;
4327763792
>>> id(list2)
4327425760
>>> list3 = list1
>>> id(list3) #通过直接赋值的方式,变量指向的id地址是一样的;
4327763792
>>> list3.append('web')
>>> list3
['笨鸟工具', 'x1y1z1.com', 'web']
>>> list1
['笨鸟工具', 'x1y1z1.com', 'web'] #修改直接赋值所得到的变量list3的值,原列表list1的值也发生改变

全栈后端 / python教程 :


























Copyright © 2022-2024 笨鸟工具 x1y1z1.com All Rights Reserved.