面试题答案
一键面试def modify_list(lst):
lst[0] = '修改后的值'
return lst
my_list = [1, 2, 3]
result = modify_list(my_list)
print(result)
打印结果说明:在函数外部打印的列表第一个元素已经被修改为“修改后的值”。这是因为在Python中,函数对于列表这种可变对象的参数传递方式是引用传递(也可以理解为传对象的引用)。当把列表作为参数传递给函数时,函数内部的参数实际上是外部列表对象的一个引用,函数内部对这个引用指向的对象进行修改,由于函数内外指向的是同一个对象,所以在函数外部可以看到列表被修改的结果。