Python引用类型和值类型的区别与使用解析


Posted in Python onOctober 17, 2017

Python数据类型分为值类型和引用类型, 下面我们看下它们的区别:

值类型:

对象本身不允许修改,数值的修改实际上是让变量指向了一个新的对象
包含:字符串、元组、数值,本身不允许被修改

引用类型:

对象本身可以修改,
包含:列表、字典,本身允许修改

例子:

a = 11 
print id(a) 
a = 16 
print id(a)

结果:

43525053L
57628312L

修改值类型的值,只是让它指向一个新的内存地址,并不会改变变量b的值

l = [1,2,3] 
print id(l) 
l[0] = 0 
print id(l)

结果:

19775281L
19775281L

修改引用类型的值,因为listb的地址和lista的一致,所以也会被修改

一般只为了复制值,可以使用分片操作

listb = lista[:]

下面在单独看下python的值类型和引用类型

值类型:

包含:字符串、元组、数值,本身不允许被修改

引用类型:

包含:列表、字典,本身允许修改

a = 2
b = a
a = 3

修改值类型的值,只是让它指向一个新的内存地址,并不会改变变量b的值

lista = [1,2]
listb = lista
lista[0] = 3

修改引用类型的值,因为listb的地址和lista的一致,所以也会被修改

一般只为了复制值,可以使用分片操作

listb = lista[:]

总结

以上所述是小编给大家介绍的Python引用类型和值类型的区别与使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python切片用法实例教程
Sep 08 Python
Python计算回文数的方法
Mar 11 Python
Python中MySQL数据迁移到MongoDB脚本的方法
Apr 28 Python
基础的十进制按位运算总结与在Python中的计算示例
Jun 28 Python
python使用pil进行图像处理(等比例压缩、裁剪)实例代码
Dec 11 Python
python+VTK环境搭建及第一个简单程序代码
Dec 13 Python
pycharm 主题theme设置调整仿sublime的方法
May 23 Python
Python之用户输入的实例
Jun 22 Python
python得到单词模式的示例
Oct 15 Python
记一次pyinstaller打包pygame项目为exe的过程(带图片)
Mar 02 Python
python数据库编程 Mysql实现通讯录
Mar 27 Python
Python importlib动态导入模块实现代码
Apr 16 Python
利用python批量修改word文件名的方法示例
Oct 17 #Python
Django内容增加富文本功能的实例
Oct 17 #Python
Python通过future处理并发问题
Oct 17 #Python
python3设计模式之简单工厂模式
Oct 17 #Python
基于Python和Scikit-Learn的机器学习探索
Oct 16 #Python
python版简单工厂模式
Oct 16 #Python
Python实现扩展内置类型的方法分析
Oct 16 #Python
You might like
phpinfo 系统查看参数函数代码
2009/06/05 PHP
php实现保存周期为1天的购物车类
2017/07/07 PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
2020/02/27 PHP
最近项目写了一些js,水平有待提高
2009/01/31 Javascript
一个可以兼容IE FF的加为首页与加入收藏实现代码
2009/11/02 Javascript
JavaScript Event学习第十一章 按键的检测
2010/02/10 Javascript
javascript天然的迭代器
2010/10/29 Javascript
父子窗体间传递JSON格式的数据的代码
2010/12/25 Javascript
提取jquery的ready()方法单独使用示例
2014/03/25 Javascript
jquery中子元素和后代元素的区别示例介绍
2014/04/02 Javascript
详细解读Jquery各Ajax函数($.get(),$.post(),$.ajax(),$.getJSON())
2016/08/15 Javascript
jQuery实现判断控件是否显示的方法
2017/01/11 Javascript
angular2+nodejs实现图片上传功能
2017/03/27 NodeJs
详解vue-router 2.0 常用基础知识点之导航钩子
2017/05/10 Javascript
完美解决通过IP地址访问VUE项目的问题
2020/07/18 Javascript
[02:17]DOTA2亚洲邀请赛 RAVE战队出场宣传片
2015/02/07 DOTA
python基础教程之lambda表达式使用方法
2014/02/12 Python
Python实现的RSS阅读器实例
2015/07/25 Python
Python处理JSON数据并生成条形图
2016/08/05 Python
Python对字符串实现去重操作的方法示例
2017/08/11 Python
python实现键盘控制鼠标移动
2020/11/27 Python
浅谈pycharm的xmx和xms设置方法
2018/12/03 Python
Python使用MyQR制作专属动态彩色二维码功能
2019/06/04 Python
Python 获取项目根路径的代码
2019/09/27 Python
Python如何访问字符串中的值
2020/02/09 Python
TensorFlow的环境配置与安装教程详解(win10+GeForce GTX1060+CUDA 9.0+cuDNN7.3+tensorflow-gpu 1.12.0+python3.5.5)
2020/06/22 Python
Python json解析库jsonpath原理及使用示例
2020/11/25 Python
Bally巴利中国官网:经典瑞士鞋履、手袋及配饰奢侈品牌
2018/10/09 全球购物
公司清洁工岗位职责
2013/12/14 职场文书
《夹竹桃》教学反思
2014/04/20 职场文书
关于运动会的广播稿
2014/09/22 职场文书
2014年银行信贷员工作总结
2014/12/08 职场文书
写给孩子的新学期寄语
2015/02/27 职场文书
经费申请报告
2015/05/15 职场文书
企业党支部工作总结2015
2015/05/21 职场文书
2016年秋季开学典礼新闻稿
2015/11/25 职场文书