查看: 2041|回复: 0

[Python] python数据类型(不可变数据类型和可变数据类型)

[复制链接]

142

主题

187

帖子

2170

积分

管理员

Rank: 10Rank: 10Rank: 10

积分
2170

活跃会员最佳新人

QQ
发表于 2023-3-19 22:38:37 | 显示全部楼层 |阅读模式
python数据类型(不可变数据类型和可变数据类型)
python中不可变数据类型和可变数据类型

1.名词解释
  不可变数据类型: 当该数据类型的对应变量的值发生了改变,那么它对应的内存地址也会发生改变,对于这种数据类型,就称不可变数据类型。
    总结:不可变数据类型更改后地址发生改变,可变数据类型更改地址不发生改变

2.1 整型
我们可以发现,当数据发生改变后,变量的内存地址发生了改变,那么整型就是不可变数据类型。

2.2 字符串
我们可以发现,当数据发生改变后,变量的内存地址发生了改变,那么字符串就是不可变数据类型。

2.3 元组
元组被称为只读列表,即数据可以被查询,但不能被修改,但是我们可以在元组的元素中存放一个列表,通过更改列表的值来查看元组是属于可变还是不可变。
我们可以发现,虽然元组数据发生改变,但是内存地址没有发生了改变,但是我们不可以以此来判定元组就是可变数据类型。我们回头仔细想想元组的定义就是不可变的。我们修改了元组中列表的值,但是因为列表是可变数据类型,所以虽然在列表中更改了值,但是列表的地址没有改变,列表在元组中的地址的值没有改变,所以也就意味着元组没有发生变化。我们就可以认为元组是不可变数据类型,因为元组是不可变的。

2.4 集合
集合我们常用来进行去重和关系运算,集合是无序的。
我们可以发现,虽然集合数据发生改变,但是内存地址没有发生了改变,那么集合就是可变数据类型。

2.5 列表
列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,它是以[]括起来,每个元素以逗号隔开,而且它里面可以存放各种数据类型。
我们可以发现,虽然列表数据发生改变,但是内存地址没有发生了改变,那么列表就是可变数据类型。

2.6 字典
字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的。但是在3.6版本后,字典开始是有序的,这是新的版本特征。字典的key值可以是整型,字符串,元组,但是不可以是列表,集合,字典。

数据类型可变/不可变
整型不可变
字符串不可变
元组不可变
列表可变
集合可变
字典可变








上一篇:python——time库整理(基础知识+实例)
下一篇:python GUI库 —— PySimpleGUI 简洁的GUI库 Python GUIs for Humans
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表