python中的数据类型

python中有一句很重要的话“一切皆为对象,一切皆为对象的引用”。

bool、int、float等等都是python中的内置类,但是需要区分可变类与不可变类,如果类的对象在实例化的时候有一个固定的值,并且在随后的操作中不会被改变,那么就是不可变的类。

  • bool、int、float、tuple、str、frozenset都是不可变类
  • list、set、dict 是可变类

python中的函数id()可以获取内存地址。

不可变的类

 1 x=1
 2 id(x)
 3 Out[2]: 140735774256896
 4 
 5 y=1
 6 id(y)
 7 Out[4]: 140735774256896
 8 
 9 x=2
10 y=2
11 id(x)
12 Out[7]: 140735774256928
13 id(y)
14 Out[8]: 140735774256928
15 
16 x += 2
17 id(x)
18 Out[10]: 140735774256992

 可变的类

 1 a = [1,2]
 2 id(a)
 3 Out[13]: 2447876340232
 4 
 5 a = [1,2]
 6 id(a)
 7 Out[15]: 2447875658632
 8 
 9 a.append(3)
10 id(a)
11 Out[17]: 2447875658632
12 
13 a += [4]
14 id(a)
15 Out[19]: 2447875658632
16 
17 a
18 Out[20]: [1, 2, 3, 4]
原文地址:https://www.cnblogs.com/yanxingang/p/10397293.html