python中的list实际是一个指针
例如:
l1=[1,2,3,4]
l2=l1
for n in range(0,len(l2)):
l2[n]=n*n
print(l1)
print(l2)
输出结果为:
[0, 1, 4, 9]
[0, 1, 4, 9]
说明修改l2,会导致l1的值同步变化。因为两个指针指向的是同一份数据
在function中,如果传递list作为参数,在function中修改list的值,会导致function外的list值发生同步变化
python中的list实际是一个指针
例如:
l1=[1,2,3,4]
l2=l1
for n in range(0,len(l2)):
l2[n]=n*n
print(l1)
print(l2)
输出结果为:
[0, 1, 4, 9]
[0, 1, 4, 9]
说明修改l2,会导致l1的值同步变化。因为两个指针指向的是同一份数据
在function中,如果传递list作为参数,在function中修改list的值,会导致function外的list值发生同步变化