python 可变类型与不可变类型

1 数据类型分类

Python中的数据包括:Number(包括Int,Float,Bool和Complex),String,Tuple,List,Dict,Set。 这几种数据类型按照是否可变,有如下分类: 不可变类型:Number,String,Tuple 可变类型:List,Dict,Set

2 不可变类型

地址不改变的情况下,值永远不变,如果想改变其值,地址一定发生了改变。

这些类型的数据一旦经过初始化创建成功,对应内存地址上的数据本身便不能发生变化

 

1 a = 10
2 print(a, id(a))
3 a = 20
4 print(a, id(a))
5 # 10 1370259856
6 # 20 1370260176

3 可变类型

在地址不变的情况下。值可以发生改变

 1 list1 = [1, 2, 3, 4]
 2 print(id(list1))
 3 for i in range(len(list1)):
 4     print(id(list1[i]), end='	')
 5 print('
')
 6 list1[1] = 4
 7 print(id(list1))
 8 for i in range(len(list1)):
 9     print(id(list1[i]), end='	')
10 print('
')
11 12 # 42854408
13 # 1366458480    1366458512  1366458544  1366458576  
14 # 
15 # 42854408
16 # 1366458480    1366458576  1366458544  1366458576

 

 

 

原文地址:https://www.cnblogs.com/yinyitianya/p/11726527.html