可变与不可变类型

Posted 2722127842qq-123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了可变与不可变类型相关的知识,希望对你有一定的参考价值。

一.可变与不可变类型

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

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

二.验证

2.1 int是不可变类型

1 x=10
2 print(id(x))
3 x=11 # 产生新值
4 print(id(x))

 2.2 float是不可变类型

 

1 x=3.1
2 print(id(x))
3 x=3.2
4 print(id(x))

 

 

2.3 str是不可变类型

1 x="abc"
2 print(id(x))
3 x=gggg
4 print(id(x))

小结:int、float、str都被设计成了不可分割的整体,不能够被改变

 

2.4bool不可变

bool类型只有true和false两种

true就是true

false就是false

 

2.5 list是可变类型

1 l=[abc,bcd,cde]
2 print(id(l))
3 l[0]=ABC
4 print(l)
5 print(id(l))

 

2.6dict可变类型

1 dic={第一名:657,第二名:655}
2 print(id(dic))
3 dic[第一名]=713
4 print(dic)
5 print(id(dic))

 

关于字典补充:
定义:{}内用逗号分隔开多key:value,
其中value可以是任意类型
但是key必须是不可变类型

 

以上是关于可变与不可变类型的主要内容,如果未能解决你的问题,请参考以下文章

可变与不可变类型

Python基础--可变数据类型与不可变数据类型

可变与不可变类型

可变类型与不可变类型的作用和意义

python —— 可变与不可变类型

可变与不可变类型