python中的set是可变的,在python之中的set指的是集合类型的对象或者是集合数据类型。而在几种基础的的数据类型之中只有列表、字典和集合这三个是可变类型,那下面这一篇文章就会来讲一下set为什么是可变的,往下看看吧。

Python中的set是可变的吗?set为什么可变

在python之中去判断一个对象是否为可变类型,要根据它在发生改变的时候内存空间里面是如何变化的,set更改的代码示例如下所示:

abb = {1, 2, 3}
acc = abb
print(id(abb), id(acc))
acc.add(4)
print(abb) 
print(id(abb), id(acc))

python内所有的对象在声明或者创建之后都会在内存里面开辟出一个空间来保存值,而对象名就相当于是执行这个内存空间地址的信息或者是指针一样。

不可变类型并不是说它们的值不能改变,而是不可变类型的对象在发生变化的时候会开辟出来一个新的地址保存更改后值,哪怕再用原来的对象去接收更改后的值它本质是也是发生变化了的。

而可变类型就是刚好和它相反,对可变类型对象做的操作实际上都是在内存空间里面更改了实际的值。也就是说可变类型对象值变化就是彻底变化了,简单来说就是原地变更。

而在上面的示例之中可以看到这两个变量id的值都是相等的,而id就是内存空间的地址,所以set是可变的。

以上就是关于“Python中的set是可变的吗?set为什么可变”的全部内容了,想要了解更多python的实用知识和代码示例可以持续关注这个频道,每次更新都会有很多新的知识技术分享给大家。

更多python相关文章请访问分类:python

【版权声明】本文图文出自大盘站@dapan.cc,转载请注明出处!