python 函数定义输出结果

大神们 这个为什么不选C,img2不是就没有改变吗?改变的是img1

img

img1和img2是list,list是可变数据类型
你传递给img1的是img2的地址,不是拷贝,所以改变img1就等于改变img2

相当于 img1 = img2 = [1,2,3,4]
他们共用一个内存地址,去看下深拷贝浅拷贝

因为传给函数dipl的参数为img2,输出的就是img2
img1虽然改变了,但是并没有使用它进行传参。
输出的还是img2 = [1,2,3,4]
希望对题主有所帮助,望采纳!!