`

python的深复制和浅复制

 
阅读更多
附上一篇不错的说PYTHON深浅复制的文:
http://www.cnblogs.com/Eva-J/p/5534037.html
# -*- coding:utf-8 -*-
# 深复制与浅复制
import copy
list1 = [1,2,['a','b']]
list2 = list1
list3 = copy.copy(list1)
list4 = copy.deepcopy(list1)
list1.append(3)
list1[2].append('c')

print 'list1 = ',list1
print 'list2 = ',list2
print 'list3 = ',list3
print 'list4 = ',list4

# result: 
# list1 =  [1, 2, ['a', 'b', 'c'], 3]
# list2 =  [1, 2, ['a', 'b', 'c'], 3]
# list3 =  [1, 2, ['a', 'b', 'c']]
# list4 =  [1, 2, ['a', 'b']]

分享到:
评论

相关推荐

    Python 深拷贝和浅拷贝详解

    在Python编程语言中,深拷贝和浅拷贝是两种不同的复制对象的方法,它们涉及到对象内存的管理和数据结构的复制。这两个概念对于理解和处理复杂的对象结构至关重要。 **浅拷贝**: 浅拷贝(Shallow Copy)是创建一个...

    深入浅析Python中list的复制及深拷贝与浅拷贝

    我们经常需要复制一个列表到另一个变量,而在复制过程中涉及到的深拷贝(deep copy)和浅拷贝(shallow copy)是两个重要的概念。理解它们之间的差异对于编写健壮的程序代码和避免潜在的错误至关重要。 浅拷贝通常...

    详解Python列表赋值复制深拷贝及5种浅拷贝

    在列表复制这个问题,看似简单的复制却有着许多的学问,尤其是对新手来说,理所当然的事情却并不如意,比如列表的赋值、复制、浅拷贝、深拷贝等绕口的名词到底有什么区别和作用呢? 列表赋值 # 定义一个新列表 l1 ...

    copy-浅复制-python.docx

    Python提供了两种复制方法:浅复制和深复制。本文主要关注浅复制的概念及其在实际编程中的应用。 浅复制,又称为表面复制,它的核心在于创建一个新对象,这个新对象与原对象在值上相同,但它们在内存中的位置不同。...

    python基础 30 浅复制&深复制, copy & deepcopy (教学教程tutorial)

    python基础_30_浅复制&深复制,_copy_&_deepcopy_(教学教程tutorial)

    python浅拷贝、深拷贝

    在Python中,浅拷贝(shallow copy)和深拷贝(deep copy)是用于创建对象副本的两种常见方式。它们可以应用于不同类型的对象,如列表、字典、集合等。下面是对浅拷贝和深拷贝的描述: 浅拷贝:浅拷贝是创建一个新...

    python的深拷贝与浅拷贝

    Python中的深拷贝和浅拷贝是编程时处理对象复制的关键概念,特别是在处理复杂数据结构时。它们决定了拷贝操作的“深度”,即创建新对象的程度。本文将深入探讨这两种拷贝的区别,以及如何在Python中正确使用它们。 ...

    Python中的深拷贝和浅拷贝详解

    变量-引用-对象(可变对象,不可变对象)-切片-拷贝(浅拷贝,深拷贝) 【变量-对象-引用】 在Python中一切都是对象,比如说:3, 3.14, ‘Hello’, [1,2,3,4],{‘a’:1}…… 甚至连type其本身都是对象,type对象 Python...

    Python的赋值、深拷贝与浅拷贝的区别详解

    在Python编程语言中,了解对象的赋值、深拷贝和浅...理解这些差异有助于编写更健壮、更可控的代码,尤其是在处理数据的复制和修改时。在涉及到可变对象时,选择正确的拷贝方式至关重要,以避免意外的副作用和数据污染。

    举例区分Python中的浅复制与深复制

    其中,最常用的是`copy()`和`deepcopy()`函数,它们分别实现浅复制和深复制的功能。 1. **浅复制**: - 浅复制创建一个新的对象,并将原始对象的引用放入新对象中。 - 对于复合对象(如列表、字典等),浅复制只...

    Python浅拷贝与深拷贝用法实例

    本文实例讲述了Python浅拷贝与深拷贝用法。分享给大家供大家参考。具体分析如下: >>> person=['name',['savings',100]] >>> hubby=person[:] >>> wifey=list(person) >>> [id(x) for x in person,hubby,wifey] ...

    C语言中文网Python教程

    “4.22Python深拷贝和浅拷贝详解.html”讲解了Python中的深拷贝和浅拷贝概念。深拷贝创建了一个全新的对象,其内部所有引用的对象也会被复制,而浅拷贝只复制对象本身,不复制内部的引用。理解这两者之间的区别对于...

    python深copy和浅copy区别对比解析

    本文将详细介绍Python中的深拷贝(deep copy)和浅拷贝(shallow copy)的区别,并通过实例代码进行对比解析。 首先,我们来理解什么是对象复制。在Python中,当一个变量被赋值给另一个变量时,实际上并没有创建新...

    Python中字典的浅拷贝与深拷贝用法实例分析

    本文实例讲述了Python中字典的浅拷贝与深拷贝用法。分享给大家供大家参考,具体如下: 最近发现的一个很值得记录的东西就是python字典的浅拷贝问题 首先,明确一下什么是浅拷贝,什么是深拷贝: 简单的来说就是,在...

    图解:python中的浅拷贝和深拷贝

    在Python编程语言中,了解如何正确处理对象的拷贝至关重要,特别是浅拷贝和深拷贝的概念。浅拷贝和深拷贝主要涉及到列表、元组等可变对象的复制,以及这些对象内部包含的不可变和可变对象的情况。 浅拷贝(Shallow ...

    Python浅复制中对象生存周期实例分析

    在Python编程语言中,对象的生存周期是指从创建...总之,Python的浅复制涉及到对象的引用和内存管理,理解这些概念可以帮助我们更好地控制和调试代码。在实际编程中,根据需求选择合适的复制方式是优化程序性能的关键。

    Python深拷贝与浅拷贝用法实例分析

    在Python编程中,深拷贝和浅拷贝是两种不同的对象复制方式,它们涉及到Python对象的内存管理和引用机制。理解这两种拷贝的概念对于编写复杂的代码和避免意外的副作用至关重要。 1. **对象的赋值(浅拷贝)** 当...

Global site tag (gtag.js) - Google Analytics