首页 > 其他 > 详细

可变不可变类型

时间:2021-06-02 00:02:27      阅读:22      评论:0      收藏:0      [点我收藏+]

可变类型:值改变,id不变,证明改的是原值,证明原值是可以被改变的

不可变类型:值改变,id也变了,证明是产生新的值,压根没有改变原值,证明原值是不可以被修改的

x = 10
print(id(x))
x = 11
print(id(x))

--->
1713078672
1713078704
#值改变,id也发生了改变

#验证:
int是不可变类型,所有的赋值都是产生新值
float是不可变类型
str是不可变类型
int、float、str三种类型的值是不可以分割的,是不可分割的整体,去加去减等操作都是在原有的基础上产生了一个全新的值,和原来的值没有关系
小结:int、float、str都被设计成了不可分割的整体,不能够被改变

list是可变类型
l = [‘aaa‘, ‘bbb‘, ‘ccc‘]
print(id(l))
l[0] = ‘AAA‘
print(l)
print(id(l))

--->
1870928154440
[‘AAA‘, ‘bbb‘, ‘ccc‘]
1870928154440

dict是可变类型
dic = {‘k1‘:111,‘k2‘:222}
print(id(dic))
dic[‘k1‘]=333333333
print(dic)
print(id(dic))

--->
1590079598456
{‘k1‘: 333333333, ‘k2‘: 222}
1590079598456

bool不可变(同int、float、str类型)

可变不可变类型

原文:https://www.cnblogs.com/KengTou/p/14838802.html

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