改变参数的问题

改变参数的问题

一个函数,传进去一个参数,我想在函数中改变这个参数,该怎么实现?
传进一个列表

[Copy to clipboard] [ - ]
CODE:
x=[]
def f(y):
        y.append(1)

f(x)
print x



QUOTE:
[1]

这里有一个实际的例子:

http://bbs.chinaunix.net/thread-1233431-1-2.html

path.walk 的第三个参数。
受教,我还总想着,传参数地址呢
int' object has no attribute 'append
还行不?有其他办法吗?我不想转换来转换去的……
你是想 f(i), i 是个整数,在 f 里改动它的值?

应该不行吧?可以通过返回值来修改 i,象这样:

[Copy to clipboard] [ - ]
CODE:
i=f(i)

如果你的函数还要返回其他值也没有问题,python 可以返回一个元组(多个值)。象这样:

[Copy to clipboard] [ - ]
CODE:
x, i, y=f(i)


嗯.不错.
晕,我不想通过返回值……额…… 不过也谢谢大家
列表和数组都可以直接在函数里改变的