购买主题
沙发{:10_256:}
请问下x=[[1,2],[3,4]] x = y[:]后,
x is y是False
为什么x = y是True呢?
明明改变x[0]y并不会改变啊
**1.变量不是盒子**
在python中,变量不是一个盒子,当赋值运算发生时,python并不是将数据放到变量里边去,而是将变量与数据进行挂钩,这个行为我们称之为引用。
将一个变量赋值给另一个变量其实就是将一个变量的引用传递给另一个变量。
>>> x =
>>> y = x
>>> x = 1
>>> x
>>> y
[此时修改x的值,y的值也会随之改变]
**2.浅拷贝**
调用列表的copy方法
>>> x =
>>> y = x.copy()
>>> x = 1
>>> x
>>> y
利用切片的方法也可以实现拷贝的效果
>>> x =
>>> y = x[:]
>>> x = 1
>>> x
>>> y
浅拷贝方法无法处理嵌套列表
>>> x = [, , ]
>>> y = x.copy()
>>> x = 0
>>> x
[, , ]
>>> y
[, , ]
[浅拷贝只是拷贝了外层的对象,如果包含嵌套对象的话,只是其引用]
**3.copy模板**
有两个函数,copy实现的是浅拷贝,deepcopy实现的是深拷贝。
copy
>>> import copy
>>> x = [, , ]
>>> y = copy.copy(x)
>>> x = 0
>>> x
[, , ]
>>> y
[, , ],
deepcopy
>>> x = [, , ]
>>> y = copy.deepcopy(x)
>>> x = 0
>>> x
[, , ]
>>> y
[, , ]
[deepcopy将原对象拷贝的同时,也将对象中所有引用的子对象一并进行了拷贝
如果存在多层嵌套的话,深拷贝也会360度无死角地拷贝每一层嵌套里面的数据。]
默认使用的是浅拷贝,因为效率,深拷贝需要更多空间,浅拷贝只要复制地址就行了
zdasd 发表于 2021-4-7 10:21
**1.变量不是盒子**
在python中,变量不是一个盒子,当赋值运算发生时,python并不是将数据放到变量里边 ...
码主 复习了
学习
{:10_265:}
打卡023
已复习,谢谢
tobio鸹 发表于 2020-8-21 09:46
请问下x=[[1,2],[3,4]] x = y[:]后,
x is y是False
为什么x = y是True呢 ...
x和y是两个不同的引用指向两个不同的对象,所以是false ,但x里的x 和 y里的y,这两个不同的引用,指向的都是同一个对象,所以为true,当改变x[?]时,引用就指向别的对象了,y[?]当然不会变。
从嵌套列表开始就有点晕晕乎乎了
jackz008 发表于 2021-8-20 11:39
x和y是两个不同的引用指向两个不同的对象,所以是false ,但x里的x 和 y里的y,这两个不同的引用, ...
如果对引用和实际的对象不理解的话,想要理解这一章,确实会有困难。
{:7_141:}
学到了很多,谢谢小甲鱼
打卡~~{:10_254:}{:10_254:}
zdasd 发表于 2021-4-7 10:21
**1.变量不是盒子**
在python中,变量不是一个盒子,当赋值运算发生时,python并不是将数据放到变量里边 ...
niubi
matrix = [,
,
]
minimum_rows = []
for a in range(3):
for b in range(3):
if b == 0:
min_value = ,a,b]
else:
if matrix < min_value:
min_value = matrix
min_value = a
min_value = b
minimum_rows.append(min_value)
maximum_columns = []
for a in range(3):
max_value = ,0,a]
maximum_columns.append(max_value)
for a in range(1,3):
for b in range(3):
if matrix > maximum_columns:
maximum_columns = matrix
maximum_columns = a
maximum_columns = b
for a in range(3):
for b in range(3):
if minimum_rows == maximum_columns:
print("幸运数字是:",minimum_rows)
打卡
做到课后练习最后一个题,我感觉自己脑子都没有了。
看了答案,我去,这居然都想的得到。
还得努力啊。
打卡{:10_256:}
已有 25 人购买 本主题需向作者支付 5 鱼币 才能浏览