python--函数参数传递
1. 调用函数时,实参会传递给形参,叫做参数传递。
2. 根据实际参数的类型不同,函数参数的传递方式可分为 2 种,分别为值传递和引用(地址)传递:
- 值传递:传递的实参类型为不可变类型(字符串、数字、元组);对象本身不允许修改,数值的修改实际上是让变量指向了一个新的对象。
- 引用(地址)传递:传递的实参类型为可变类型(列表,字典);
值传递和引用传递的区别:
值传递后,形参变,实参不变;实质是:实参的复制品传递给了形参,复制品变,但是实参并不变。
引用传递后,形参变,实参变。
3. 实质:
引用传递其实是传递的实参的地址,本质也是值传递,不过形参是复制的引用,也就是对象的地址,修改了形参的值,本质上是修改了同一个地址的对象。引用传递的本质是以值传递的方式传递对象(列表,字典)的地址。引用变量(其实就是一个指针)指向可变对象。