首页 > 编程语言 > 详细

Python中可变数据类型和不可变数据类型

时间:2020-05-21 21:41:09      阅读:66      评论:0      收藏:0      [点我收藏+]

Python中的数据类型总共分为:

Number(数字)、String(字符串)、Tuple(元组)、List(列表)、Sets(集合)、Dictionary(字典)

其中不可变数据(三个):

Number(数字)、String(字符串)、Tuple(元组)

可变数据(三个):
List(列表)、Sets(集合)、Dictionary(字典)

那么什么是不可变什么又是不可变,其实这里的可变和不可变指的是变量的内存空间地址是否能发生变化

我们定义一个变量 a 然后给它赋值2次,通过id()方法来观察它的内存地址

 

a = 5
print(id(a))
a = 10
print(id(a))

 

运行结果如下图,会发现a的内存地址发生了变化,所以不可变类型指的是重新赋值或者值发生改变的时候会开辟一个新的内存空间

然后变量a会指向新的内存地址,而不是在原有的内存上修改值

技术分享图片

 

下面来看可变数据类型

 

lista = [1,2,3,4]
print(id(lista))
lista.append(100)  # 追加一个元素
print(id(lista))
print(lista)

 

运行结果如下,会发现 lista 的值发生变化后它的内存地址是没有发生改变的,所以可变数据类型指的是值发生改变的时候是在原有的内存之上直接修改的

 

技术分享图片

 

 

Python中可变数据类型和不可变数据类型

原文:https://www.cnblogs.com/zhangshaoning/p/12933577.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!