网站首页 > 技术文章 正文
Python中的可变和不可变数据类型的分类依据, 指的是保存数据的源内存空间的数据是否允许修改
1. 不可变数据类型
源内存空间中数据不允许修改, 如果想要修改, 只能开辟新内存空间,让变量引用指向新内存空间数据的地址
包括: int (整数类型) float (浮点数类型) bool (布尔类型) str (字符串类型) tuple(元组类型)
比如: 下面以float 浮点数类型为例
上述图示中可以清楚的看出, float是不可变数据类型, 其修改数据前后的引用数据的id()地址值发生了变化
再比如: 我们以元组为例, 说明元组也是不可变的数据类型
可以看出, 对元组使用+=操作时,元组的前后数据改变了, 而且引用数据的地址也发生了改变,元组原来内存空间中的数据不允许修改, 所以,元组是不可变数据类型
再比如: 下边以字符串为例, 证明字符串也是不可变数据类型
从上面的图示可以很清晰的看出, 修改数据的前后, 字符串引用数据的地址发生了变化, 原内存空间的数据不允许修改, 因此字符串是不可变数据类型.
因此可以得出结论, 不可变数据类型, 变量引用原内存空间中数据不允许修改, 如果想要修改, 只能开辟新内存空间,让变量引用指向新内存空间数据的地址
2. 可变数据类型
概念: 源内存空间中的数据可以修改不需要开辟新内存空间,只要在源内存基础上修改数据
包括: list(列表类型) dict(字典类型) set(集合类型)
比如: 下面以列表为例, 说明列表是可变数据类型
从上面的图示中可以看出, 对列表进行操作, 添加数据300后, 前后并没有重新开辟内存空间, 而是在原内存基础上添加的数据, 所以 列表是可变数据类型
再比如: 以下是字典的图示, 展示字典也是可变数据类型
从上面的图示可以看出, 修改字典数据前后, 其中引用数据的地址, 并没有发生改变, 并没有开辟新的内存空间, 而是在原内存基础上修改的数据, 因此字典是可变数据类型
再比如: 下边的集合的使用, 说明集合也是不可变数据类型
从上面的图示可以查看出, 对集合中添加数据前后, 其集合变量的引用地址并没有发生变化, 因此集合是可变数据类型.
因此从上面的图示得出结论,源内存空间中的数据可以修改,不需要开辟新内存空间,只要在源内存基础上修改数据, 这样的数据类型 就是可变数据类型
猜你喜欢
- 2025-07-14 python-递归与lamdba与高阶函数(递归 python)
- 2025-07-14 Python中如何操作Surface对象绘制图形?
- 2025-07-14 python中多态的作用是什么?(python的多态还有意义吗)
- 07-14Python数据重塑与清洗常用命令(python数据分析数据清洗)
- 07-14python文本分析与挖掘(一)-构建语料库
- 07-14Python GUI编程利器:Tkinker中的列表框和静态框(5)
- 07-14Python办公自动化系列课程2:Excel大体联数据匹配只需12行代码
- 07-14Python数据可视化Dash开源库Bootstrap信息提示框Alert
- 07-14python 数据处理库中库,增强pandas功能的库有什么特别之处
- 07-14学习编程第177天 python编程 富文本框text控件的使用
- 07-14从逗号到省略号,Python 标点符号用法大揭秘!看完少踩 90% 的坑!
- 277℃Python短文,Python中的嵌套条件语句(六)
- 277℃python笔记:for循环嵌套。end=""的作用,图形打印
- 274℃PythonNet:实现Python与.Net代码相互调用!
- 269℃Python实现字符串小写转大写并写入文件
- 268℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 127℃原来2025是完美的平方年,一起探索六种平方的算吧
- 114℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 108℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 最近发表
-
- Python数据重塑与清洗常用命令(python数据分析数据清洗)
- python文本分析与挖掘(一)-构建语料库
- Python GUI编程利器:Tkinker中的列表框和静态框(5)
- Python办公自动化系列课程2:Excel大体联数据匹配只需12行代码
- Python数据可视化Dash开源库Bootstrap信息提示框Alert
- python 数据处理库中库,增强pandas功能的库有什么特别之处
- 学习编程第177天 python编程 富文本框text控件的使用
- 从逗号到省略号,Python 标点符号用法大揭秘!看完少踩 90% 的坑!
- 一篇文章带你弄懂Python基础之列表介绍和循环遍历
- Python NumPy 数组形状操作(python数组类型)
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)