到底是值传递,还是引用传递?
x=1
L=[]
L.append(x)
def f(x,L=[2]):
x=2*x
L.append(x)
print L,x
f(x)
print "f(x): ",L,x
f(x,L)
print "f(x,L): ",L,x
得到的结果是:
[2, 2] 2
f(x): [1] 1
[1, 2] 2
f(x,L): [1, 2] 1
结果第二行用值传递完全解释得通。
结果第四行用引用传递完全解释得通。
那么问题是:python里到底使用之传递还是引用传递?
又或者是两者都使用,那么在什么情况下使用值传递,在什么情况下使用引用传递?
有没有相关资料?
[解决办法]
引用传递
[解决办法]
似乎一般的类型是值传递
而项列表元组等等是引用传递的
[解决办法]
指针传值。
[解决办法]
传指针值。