在 Python开发中,我们令一个变量等于另外一个变量时,并不是把值传递给它,而是直接把指向的地址更改了。我们想要查看一个变量在内存中的地址,可以通过id( 变量) 来查看。我们通过一个小例子来看看这个有趣的过程。 >>> x = 12 >>> y= 13 >>> id(x) 1865402384 >>> id(y) 1865402416 >>> x = y >>> id(x) 1865402416 >>> id(y) 1865402416 首先给x变量赋值为12,y变量赋值为13,我们用id(变量)分别查看x和y在内存中的位置。上面显示分别为1865402384和1865402416。然后我们令x = y后,再查看一下它们在内存中的位置,发现x 和 y都指向了1865402416。由此可见,在 python 中,我们赋值的方式和 C语言 有所不同, c语言 直接更改x那块内存里面的值,而Python直接改变x的指向,这让我想起了指针。 我们接着尝试一下,继续在这里输入下面的代码 >>> y = 12 >>> id(y) 1865402384 天!发生了什么??y在内存中的地址又变成1865402384了,准确说,y又指向了1865402384这块内存区域了。这样一看,和C语言的指针还真的很像呢。 来源:博客园
|