📅  最后修改于: 2023-12-03 14:46:45.094000             🧑  作者: Mango
在Python中,函数参数的传递方式是按引用传递,也称作对象引用传递。这意味着函数的形参是实参的引用,而不是它们的值。修改形参会影响实参的值。
例如,下面的代码将会输出 [5, 2]
:
def modify_list(lst):
lst.append(2)
lst[0] = 5
mylist = [1, 2, 3]
modify_list(mylist)
print(mylist)
在这个例子中,mylist
是一个列表对象的引用。当调用 modify_list()
时,该引用作为参数传递给函数,此时 lst
就是 mylist
的另一个引用。由于 lst
和 mylist
都引用同一个列表对象,所以在修改 lst
的值时会影响到 mylist
的值。
在 Python 中,一切都是对象。函数的参数可以是任何对象,包括整数、浮点数、列表、元组等,它们都是对象。当传递对象时,实际上传递的是对象的引用,而不是值。
因此,可以把 Python 传递参数的方式称作按引用调用,而非按值调用。
总之,在 Python 中,函数参数的传递方式是按引用传递。这一点需要注意,以免在使用时出现错误。