Python对象与引用的介绍


Posted in Python onJanuary 24, 2019

对象

Python 中,一切皆对象。每个对象由:标识(identity)、类型(type)、value(值)组成。

  • 1. 标识用于唯一标识对象,通常对应于对象在计算机内存地址。使用内置函数 id(obj)可返回对象 obj 的标识。
  • 2. 类型用于表示对象存储的“数据”的类型。类型可以限制对象的取值范围以及可执行的操作。可以使用 type(obj)获得对象的所属类型。
  • 3. 值表示对象所存储的数据的信息。使用 print(obj)可以直接打印出值。

对象的本质:一个内存块,拥有特定的值,支持特定类型的相关操作。

引用

在 Python 中,变量也称为对象的引用。因为变量存储的就是对象的地址。变量通过地址引用了“对象”。

变量位于栈内存(压栈出栈等)。
对象位于堆内存。

Python 是动态类型语言,变量不需要显式声明类型。根据变量引用的对象,Python 解释器自动确定数据类型。

Python 是强类型语言,每个对象都有数据类型,只支持该类型支持的操作。

Python对象与引用的介绍

变量在使用前必须先进行初始化,也就是将变量绑定在一个对象上,格式如:变量名 = 表达式。执行过程中,解释器先运行右边的表达式,在堆内存中创建一个对象,然后将对象的内存地址赋给左边的变量,如上图所示。变量如果不初始化,会报“name is not defined”错误。

关于变量的赋值,常用链式赋值和系列解包赋值方式。链式赋值用于同一个对象赋值给多个变量。如x=y=123 相当于:x=123; y=123。系列数据赋值给对应相同个数的变量(个数必须保持一致),如a,b,c=4,5,6 相当于:a=4;b=5;c=6。

python中,删除一个变量的方法是del。变量从栈内存中删除后,其绑定的对象并没有从堆内存中立刻删除,对象没有了变量引用,会被垃圾回收器回收,释放内存,以节约内存空间。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
Python使用Scrapy爬取妹子图
May 28 Python
详解Python中的序列化与反序列化的使用
Jun 30 Python
在Python 3中实现类型检查器的简单方法
Jul 03 Python
详解python时间模块中的datetime模块
Jan 13 Python
浅谈Python爬取网页的编码处理
Nov 04 Python
python字典操作实例详解
Nov 16 Python
Python基于dom操作xml数据的方法示例
May 12 Python
Django框架模型简单介绍与使用分析
Jul 18 Python
Python 合并多个TXT文件并统计词频的实现
Aug 23 Python
python常见字符串处理函数与用法汇总
Oct 30 Python
Tensorflow设置显存自适应,显存比例的操作
Feb 03 Python
python 读txt文件,按‘,’分割每行数据操作
Jul 05 Python
selenium+python自动化测试之多窗口切换
Jan 23 #Python
python 去除二维数组/二维列表中的重复行方法
Jan 23 #Python
selenium+python自动化测试之鼠标和键盘事件
Jan 23 #Python
selenium+python自动化测试之页面元素定位
Jan 23 #Python
python 实现矩阵上下/左右翻转,转置的示例
Jan 23 #Python
selenium+python自动化测试之使用webdriver操作浏览器的方法
Jan 23 #Python
对Python实现累加函数的方法详解
Jan 23 #Python
You might like
php相当简单的分页类
2008/10/02 PHP
php 图像函数大举例(非原创)
2009/06/20 PHP
PHP异步调用socket实现代码
2012/01/12 PHP
PHP实现抓取HTTPS内容
2014/12/01 PHP
php、java、android、ios通用的3des方法(推荐)
2016/09/09 PHP
利用js的Node遍历找到repeater的一个字段实例介绍
2013/04/25 Javascript
window.location.href中url中数据量太大时的解决方法
2013/12/23 Javascript
JQuery鼠标移到小图显示大图效果的方法
2015/06/10 Javascript
jQuery插件Validate实现自定义表单验证
2016/01/18 Javascript
jQuery动态生成不规则表格(前后端)
2017/02/21 Javascript
angularjs中使用ng-bind-html和ng-include的实例
2017/04/28 Javascript
微信小程序中时间戳和日期的相互转换问题
2018/07/09 Javascript
js jquery 获取某一元素到浏览器顶端的距离实现方法
2018/09/05 jQuery
vue-cli3.0如何使用CDN区分开发、生产、预发布环境
2018/11/22 Javascript
[49:35]KG vs SECRET 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
Python写的Socks5协议代理服务器
2014/08/06 Python
跟老齐学Python之玩转字符串(2)更新篇
2014/09/28 Python
python删除过期文件的方法
2015/05/29 Python
python对DICOM图像的读取方法详解
2017/07/17 Python
python读取视频流提取视频帧的两种方法
2020/10/22 Python
Python获取android设备cpu和内存占用情况
2020/11/15 Python
StubHub哥伦比亚:购买和出售您的门票
2016/10/20 全球购物
皮尔·卡丹巴西官方商店:Pierre Cardin
2017/07/21 全球购物
Linux开机引导的步骤是什么
2014/02/26 面试题
音乐学院硕士生的自我评价分享
2013/11/01 职场文书
七一表彰活动方案
2014/01/18 职场文书
幼儿教师师德演讲稿
2014/05/06 职场文书
安全生产月演讲稿
2014/05/09 职场文书
自我介绍演讲稿范文
2014/08/21 职场文书
毕业生实习期转正自我鉴定
2014/09/26 职场文书
2014年财政所工作总结
2014/11/22 职场文书
2015新年寄语(一句话)
2014/12/08 职场文书
工程资料员岗位职责
2015/04/13 职场文书
教师见习总结范文
2015/06/23 职场文书
欢迎新生标语2015
2015/07/16 职场文书
2015教师节通讯稿
2015/07/20 职场文书