Python学习笔记7

Python使用对象模型管理数据存储,所有的一切都用对象表示。每个对象包括三个属性:身份标识(ID),

        值(Value),类型(Type)。

身份标识:ID是用来区分对象的唯一的标识符。

                id(obj)函数用来返回对象的唯一标识符。

                is、is not 运算符用来判断两个对象是否具有相同的ID,返回True或False。

                例:a=1; b=2; 则a is b为False;a=1; b=a; 则a is b返回True。

 

Python中的对象类型包括:

数值类型(整型,浮点型),字符串类型, 布尔类型,列表,元组,字典,文件,异常,Null,模块,类,实例,函数,代码段,帧,切片,类型。

备注点:

1,整型数值常量,Python缓存了有限的额整型常量对象,如果超出了Python的缓存范围(可能是1-100),

        即使是值相同也是不同的对象。例:

        a=1;b=1 则a和b指向相同的对象1.(1在缓存范围内)。

        a=56789;b=56789 则a和b分别指向两个不同的整型对象,虽然值都是56789.

2. 浮点,字符串,布尔类型的常量,值相同则指向相同的对象。

2. 列表,元组,字典常量,实例,即使值相同也是不同的对象。例:

        a=[1,2];b=[1,2] 则a is b 为False。

3. 代码段对象可以被exec命令或eval()函数调用,动态生成代码。

4. 帧对象记录了Python在执行命令时的上下文信息。

5. 切片对象可以访问立方体数据的片段。多维切片语法是sequence[start1 : end1, start2 : end2],

        步进切片的语法为sequence[起始索引 : 结束索引 : 步进值]。

6. 类型对象是用来记录对象所属类型信息的对象。

6. 对象类型相关的函数:

        type(obj)返回obj所属类型的类型对象(有点拗口)

        isinstanc(obj,[type list])判断对象是否属于指定类型,返回True或False

        repr(obj)返回对象的字符串描述,Python可通过这个字符串重建obj,即obj=eval(repr(obj)).

        反引号操作符``等同于repr函数。

        str(obj)返回对象的字符串描述,该字符串可用于打印,对用户可读。

 

对象的赋值运算和比较运算:

        赋值运算是引用赋值。

        比较运算一般比较的是对象的值(value),除了比较运算符外,Python提供了比较函数cmp().

        对于自定义的类cmp()函数调用类中自定义的__cmp__()函数实现比较运算。

Python对象模型的存储,更新和访问:

        存储模型分为标量存储和容器存储。 例:整型对象是标量存储,列表是容器存储。

        更新模型分为可更新和不可更新。例如:

                整型,浮点,布尔,字符串,元组对象不可更新,列表,字典对象可更新。

        访问模型为直接访问,顺序访问和映射访问。例:整型对象是直接访问,列表对象是顺序访问,

                字典对象是映射访问。

备注点:变量不是对象,而是对对象的引用。

类型工厂函数:Python统一了类型和类, 所有的内建类型现在也都是类,

在这基础之上, 原来的所谓内建转换函数象 int(), type(), list() 等等,现在都成了工厂函数。

当你调用它们时, 实际上是生成了该类型的一个实例,

int(), long(), float(), complex(),  str(), unicode(), basestring() ,  list(), tuple() ,  type()

 dict(),bool() , set(), froenset() , object() ,classmethod() , staticmethod() , super() ,

property() ,  file(), slice()


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值