在Python中,变量仅是个名称,就是贴在对象上的标签。
我们都知道list和array都是可变对象。下表整理了对list和array的拷贝、切片、单个值对象修改后,对原始对象的影响。

参考资料:python中list的拷贝与numpy的array的拷贝
1)array
import numpy as np
#单个值(不变)
a = np.array([0,1,2,3,4,5])
b = a[0]
print(b)
print(a)
a[0] = -1
print(b)
print(a)
print('--------------------')
#切片(变)
a = np.array([0,1,2,3,4,5])
c = a[0:3]
print(c)
print(a)
c[0] = -1
print(c)
print(a)
print('--------------------')
#拷贝(变)
a = np.array([0,1,2,3,4,5])
d = a
print(d)
print(a)
d[0] = -1
print(d)
print(a)

2)list
#单个值(不变)
a = [0,1,2,3,4,5]
b = a[0]
print(b)
print(a)
a[0] = -1
print(b)
print(a)
print('--------------------')
#切片(不变)
a = [0,1,2,3,4,5]
c = a[0:3]
print(c)
print(a)
c[0] = -1
print(c)
print(a)
print('--------------------')
#拷贝(变)
a = [0,1,2,3,4,5]
d = a
print(d)
print(a)
d[0] = -1
print(d)
print(a)

本文通过实例演示了Python中list与numpy array在拷贝、切片及单个值修改时的区别,展示了不同操作如何影响原始数据结构。
1068

被折叠的 条评论
为什么被折叠?



