将列表作为参数的函数并不像预期的那样工作

时间:2017-12-15 03:24:48

标签: python list

def example(b): 
    b = b + ['z']


b = [1,2,3]

example(b)

执行上述示例后,b的值仍为

[1,2,3]

预期产出

[1,2,3,'z']

1 个答案:

答案 0 :(得分:2)

这是因为您正在创建一个新列表并将其重新分配给函数内的变量b

如果你改为使用.append(),你会得到你期望的结果。

def example(b):
    b.append('z')

b = [1,2,3]
example(b)

我建议您查看python variable scoping for more details