def func(x):
print "inside function" ,id(x)
x = 2
x = 50
print "outside function" ,id(x)
print 'Value of x before function call is', x
func(x)
print 'Value of x after function call is', x
輸出:蟒整數參數值不會改變,即使雖然ID()是在相同的主叫和被叫功能
outside function 6486996
Value of x before function call is 50
inside function 6486996
Value of x after function call is 50
假設id()
給出對象的內存位置。儘管兩者都保存在同一位置,但如果x值在func()
中更改,則不會在外部影響。
謝謝@ user590028!我不知道這是怎麼發生的... –