Python 中的参数的传递:到底是传值 还是引用

参考blog :http://winterttr.me/2015/10/24/python-passing-arguments-as-value-or-reference/

我们下面开始解释:

首先:Python 种的文件是怎么样赋值变量的???》?

a=1

b=[1,2]

我们这个是把 a 和 b  都看作是一个  变量,  但又不是一个真正 的 变量,   我们把 后面的 1    [1,2] 作为真正的变量  这样我们就可以将前面的 a  b  作为一个pointer,再我的理解范围下,仅仅在ython 中,   

这个时候,如果我们从新让 a =2  ,  那么 实际上,只是改变了 a 的指向的东西, 如果,1  这个东西 不释放掉的化,  这个东西会一直存在这里。

那么 换种思考方式,

我们将变量  看作指向对象的  变量。   这样也就同样能理解 深拷贝 和浅拷贝的含义了 

上面是对a  进行说明,那b呢???   这个就稍有不同的,这个就相当于直接把“引用”  直接给b了 。。。

扫描二维码关注公众号,回复: 5238050 查看本文章

ok  go on

可更改(mutable)与不可更改(immutable)对象

在python中,strings, tuples, 和numbers是不可更改的对象,而list,dict等则是可以修改的对象。

Python的函数参数传递:传值?引用?

如果传入Python的函数中的 变量是 mutable , 那么传入的就是 引用  

如果传入Python 的函数中的  变量是immutable ,那么传入的值 就是传值的方法   

猜你喜欢

转载自blog.csdn.net/weixin_42066185/article/details/82431097