首页 > 试题广场 >

下面代码运行后,a、b、c、d四个变量的值,描述错误的是?

[单选题]
下面代码运行后,a、b、c、d四个变量的值,描述错误的是?
import copy
a = [1, 2, 3, 4, ['a', 'b']]
b = a
c = copy.copy(a)
d = copy.deepcopy(a)
a.append(5)
a[4].append('c')
  • a ==  [1,2, 3, 4, ['a', 'b', 'c'], 5]
  • b ==  [1,2, 3, 4, ['a', 'b', 'c'], 5]
  • c ==  [1,2, 3, 4, ['a', 'b', 'c']]
  • d ==  [1,2, 3, 4, ['a', 'b', ‘c’]]
输出结果为
a    [1, 2, 3, 4, ['a', 'b', 'c'], 5]
b    [1, 2, 3, 4, ['a', 'b', 'c'], 5]
c    [1, 2, 3, 4, ['a', 'b', 'c']]
d    [1, 2, 3, 4, ['a', 'b']]
可知 c为浅拷贝【指向同一内存空间,未复制出全新的一份】,所以a的任意变化,c也对应发生变化
而 d是对a的深拷贝 【全新复制出的一份,与原来的a的已经分离了】  所以a的变化 不会引起d的变化
发表于 2019-04-11 21:28:35 回复(0)
d ==  [1,2, 3, 4, ['a', 'b', ‘c’]]
题目都是一堆乱码,怎么做啊。。。
发表于 2018-03-28 21:07:57 回复(0)