函数调用时,当实参是不可变对象时,形参值改变不会影响实参;当实参是可变对象时,形参值改变可能会影响实参
时间: 2024-02-22 15:01:18 浏览: 189
Python 函数的参数-在函数内部针对参数赋值不会影响外部实参
是的,当函数调用时,如果实参是不可变对象(如数字、字符串、元组等),则函数内对形参的值的修改不会影响到实参的值。因为不可变对象的值在创建后无法改变,如果函数内部试图修改形参的值,实际上是创建了一个新的对象,并将形参重新指向了这个新对象,不会改变原来实参所指向的对象。
而当实参是可变对象(如列表、字典等)时,函数内部对形参值的修改可能会影响到实参的值。这是因为可变对象的值可以在原地修改,函数内部对形参值的修改会直接影响到实参所指向的对象。如果不想在函数内部修改实参,可以在函数内部创建一个新的可变对象,并将实参的值复制一份到新对象中,然后对新对象进行操作。
阅读全文