每个定义的函数都有自己的命名空间。当您退出函数(使用返回语句)时,命名空间将被垃圾收集,并且不会执行该函数的其他语句。def func(a): print(a) b = a #the return statement exits the function return b #the following statements will NOT be executed a, b = 1,2 a, b = b+1, 5#We call the functiony = func(1)#Now y is 1#You cen del y and it will become inaccessibledel y#This will throw an error:print(y)Python 在内部使用引用。当声明y = 1被执行时,Python 解释器为值 1 保留内存。然后它将引用分配给 1 的内存位置。当您分配另一个变量时c = 1它会将相同的引用分配给 c。您可以使用 id 函数验证这一点。>>> id(c)1234567>>> id(y)1234567id(c) 和 id(y) 将返回相同的值,这意味着它们指向内存中的相同位置。如您所见,python 解释器将只在内存中存储一次不可变值。