MST

星途 面试题库

面试题:Python中函数内部修改列表的基本注意事项

在Python中,定义一个函数,函数接收一个列表作为参数。在函数内部对列表进行添加元素操作,之后在函数外部打印这个列表,解释为什么能看到列表被修改了?请举例说明。
24.0万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
def modify_list(lst):
    lst.append(42)
    return lst

my_list = [1, 2, 3]
new_list = modify_list(my_list)
print(new_list)
print(my_list) 

在Python中,列表是可变对象。当将列表作为参数传递给函数时,实际上传递的是列表的引用。所以在函数内部对列表进行的修改,会反映在函数外部,因为函数内外操作的是同一个列表对象。如上述代码中,my_list在传递给modify_list函数后,函数内对其添加元素,函数外部打印my_list能看到添加元素后的结果,同时返回的new_listmy_list指向的是同一个对象,打印结果也相同。