In [1]:
l = [1,2,3,4]
a = l
a.append(5)

In [2]:
print l


[1, 2, 3, 4, 5]

In [3]:
print id(l)
print id(a)


52229824
52229824

In [4]:
a = list(l)

In [5]:
print id(a)


52229704

In [6]:
a = l[::1]

In [7]:
print id(a)


50120944

In [8]:
#deepcopy
#shallowcopy

In [9]:
import copy
print dir(copy)


['Error', 'PyStringMap', '_EmptyClass', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_copy_dispatch', '_copy_immutable', '_copy_inst', '_copy_with_constructor', '_copy_with_copy_method', '_deepcopy_atomic', '_deepcopy_dict', '_deepcopy_dispatch', '_deepcopy_inst', '_deepcopy_list', '_deepcopy_method', '_deepcopy_tuple', '_keep_alive', '_reconstruct', '_test', 'copy', 'deepcopy', 'dispatch_table', 'error', 'name', 't', 'weakref']

In [10]:
a = copy.copy(l)

In [11]:
print id(a)


52231224

In [12]:
print id(l)


52229824

In [13]:
print a,l


[1, 2, 3, 4, 5] [1, 2, 3, 4, 5]

In [14]:
a.append(5)

In [15]:
print a,l


[1, 2, 3, 4, 5, 5] [1, 2, 3, 4, 5]

In [16]:
a=l

In [17]:
l.append(5)

In [18]:
print a,l


[1, 2, 3, 4, 5, 5] [1, 2, 3, 4, 5, 5]

In [22]:
c = copy.deepcopy(l)

In [23]:
print c,l


[1, 2, 3, 4, 5, 5] [1, 2, 3, 4, 5, 5]

In [24]:
l.append(10)

In [25]:
print c,l


[1, 2, 3, 4, 5, 5] [1, 2, 3, 4, 5, 5, 10]

In [26]:
c.append(15)

In [27]:
print c,l


[1, 2, 3, 4, 5, 5, 15] [1, 2, 3, 4, 5, 5, 10]

In [ ]: