首页 > 代码库 > 【美妙的Python之三】Python 对象解析

【美妙的Python之三】Python 对象解析

美妙的Python之Python对象


        简而言之: Python 是能你无限惊喜的语言,与众不同

        Python对象概念的理解,是理解Python数据存储的前提。Python使用对象来存储数据,构造任何类型的值都是对象。

        1.Python 对象

        Python的对象有3个属性
        标识:每个对象都有一个唯一的标识,通过  id(  )  可以查看对象的标识。
        类型:对象的类型,指明该对象可以存储的数据类型,通过  type(  )  可查看。
           :对象存储数据的值。
        如: 
<script src="https://code.csdn.net/snippets/370560.js" type="text/javascript"></script>
        Python内部的实现机制:a=1,Python先创建一个整形对象,将该整形对象的值设置为1,最后该对象赋给变量a。a=2,Python再创建一个新的整形对象,将该对象的值设置为2,最后将该对象赋给变量a。
        Python的内存管理:每个对象都有一个引用计数器,对象赋值给变量名时引用计时器+1,当一个引用销毁时,引用计数器 - 1,当引用计数器为0,也即所有引用都不存在时,系统会销毁这个对象。

        2.变量名与对象

        Python基于对象的存储数据机制,变量名与对象的关系不同于C/C++变量名与内存地址。Python中,通过变量名,不能改变对象的值,而是变量名指向了新的对象。C/C++中,变量名重新赋值,会改变对应内存地址的值。      
        Python中,变量名可以指向任何类型的对象,允许改变一个变量名指向新的不同类型的数据对象。C/C++中,一个变量名有其特定的数据类型。

       3.Python标准类型

        Python语言提供了标准的数据类型,数据存储基于对象机制,上面关于对象的介绍能加深我们队Python数据的理解。
  • 数字
  • 整形
  • 布尔型
  • 长整形
  • 复数型
  • 字符串
  • 列表
  • 元组
  • 字典
        这些Python标准类型,随后的章节会将深入的介绍。 
        Python的对象存储数据机制:实质上是Python封装了内存地址,这种封装的优势在于Python可以实现自动的内存管理等功能,减轻开发人员的负担,代价则是Python相对于C/C++等语言,需要更多的空间消耗与性能损耗。