Python10-01_函数----传递可变对象

参数的传递

函数的参数的传递本质上就是:从实参到形参的赋值操作。Python中一切皆对象,所有的赋值操作都是引用的赋值。所以,Python中参数的传递都是引用传递,不是值传递

具体操作时分为两类:

  1. 对可变对象进行写操作: 直接作用于原对象本身
  2. 对不可变对象进行写操作:会产生一个新的对象空间,并用新的值填充这块空间。

可变对象有:

字典,列表,集合,自定义对象等

不可变对象有

数字,字符串,元组,fuction等

 

传递可变对象的引用

在函数体中不做新对象的创建,而是直接可以修改可传递的对象

 1 a = [10,20]
 2 
 3 print(a)
 4 print(id(a))
 5 print("************************************************")
 6 
 7 def text(m):
 8     print(id(m))
 9     m.append(300)
10     print(id(m))
11 
12 
13 text(a)
14 print(a)

Python10-01_函数----传递可变对象

 

上一篇:Python10 函数(上) - 定义函数、调用函数


下一篇:Python10之列表1(创建列表和列表添加元素的方法)