- immutable
- mutable
1.python对象和变量:
python中一切皆对象,变量用于存放对象的引用,如a=11,11是int的对象,a是变量名,a中存储11的id,作为对象的引用。
2.mutable和immutable区别:
类目 | mutable | immutable |
---|---|---|
数据类型 | list,dict | int,float,string,tuple |
本质 | 对象的内存不固定 | 对象的内存固定 |
函数参数 | 不要作为默认参数 | 默认参数使用 |
3.代码示例:
"""本质演示"""
a = 11 # 定义变量a和b指向int对象
b = 11
a == b # True
id(a) == id(b) # True
a is b # True
c = [1,2,3] # 定义变量c和d指向list对象
d = [1,2,3]
c == d # True
id(c) == id(d) # False
c is d # False
"""函数参数演示"""
def immutable(L = [1]):
L.append(2)
return L
#first call
immutable() # return[1,2]
#second call
immutable() # return[1,2,2]