官术网_书友最值得收藏!

Copying lists

We have seen that Python variables are nothing but references to actual objects. The same holds true for lists. For this reason, manipulating lists gets a little tricky. By default, if we copy one list variable to another one by simply using the = operator, it won't actually create a duplicate or local copy of the list for that variable – instead, it would just create another reference and point the newly created reference toward the same memory location. Thus, when we make a change to the copied variable, the same change will be reflected in the original list. In the following example, we will create new isolated copies, where a change in the copied variable will not be reflected in the original list:

Now, let's look at how can we create a new copy of an existing list so that the changes to the new one do not cause any changes to the existing one:

Another way to create the isolated copy of the original list is to make use of the copy and deepcopy functions that are available in Python. A shallow copy constructs a new object and then inserts references to that object to the objects found in the original list. A deep copy, on the other hand, constructs a new compound object and then recursively inserts copies of the objects found in the original list:

主站蜘蛛池模板: 行唐县| 张家港市| 濉溪县| 光山县| 岳西县| 桃园市| 浏阳市| 陕西省| 邯郸县| 康平县| 黎平县| 皋兰县| 和田市| 扎赉特旗| 富锦市| 承德市| 安平县| 喀喇| 大足县| 唐河县| 磐安县| 克山县| 二手房| 开江县| 平度市| 中超| 简阳市| 潮安县| 漠河县| 万盛区| 林西县| 水城县| 青岛市| 永平县| 射阳县| 汝城县| 宁南县| 巴楚县| 鹤山市| 柳江县| 阿勒泰市|