python3传递的都是引用,但是函数内对变量修改是否会影响到函数外的变量,取决于是否修改了引用对象。
传递不可变对象:无法修改
传递可变对象:
- list:
- list内置函数,如.append(),直接操作原对象。
- ls = ls + [1] # 先提取右边对象,加一,然后生成新对象,不修改原对象,类似传递引用。
- ls += 1 # 提取对象,在原对象上操作。改变原对象。
python3传递的都是引用,但是函数内对变量修改是否会影响到函数外的变量,取决于是否修改了引用对象。
传递不可变对象:无法修改
传递可变对象: