首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

到底是值传递,还是引用传递?该如何处理

2012-02-16 
到底是值传递,还是引用传递?x1L[]L.append(x)deff(x,L[2]):x2*xL.append(x)printL,xf(x)printf(x):

到底是值传递,还是引用传递?
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里到底使用之传递还是引用传递?

又或者是两者都使用,那么在什么情况下使用值传递,在什么情况下使用引用传递?
有没有相关资料?

[解决办法]
引用传递
[解决办法]
似乎一般的类型是值传递
而项列表元组等等是引用传递的
[解决办法]
指针传值。
[解决办法]
传指针值。

热点排行