posts - 13,  comments - 3,  trackbacks - 0

Python语言中对象的基本概念:
    Python语言中一切都是对象
    对象的要素:
        身份:
            id(),可以被认为是对象的内存地址
        类型:
            type()
        值:
            实例中具体的值
        对象的值是否可以更改,被成为对象的可变性
    标准类型:
        数字:
            整形;布尔型;长整形;浮点型;复数型
        字符串
        列表
        元组
        字典
        (NoneType)
    None & NoneType
        None是一个实例,该实例的类型是NoneType。NoneType只有唯一的值:None
        None的布尔值为False
        布尔值为False的东西有:
            None
            False
            所有值为0的数:0,0.0,0L,0.0+0.0j
            空字符串""
            空列表[]
            空元组()
            空字典{}
            对于用户自定义类型,则定义了__nonzero__()或__len__()且值为0
    内部类型(略)
    标准类型的运算
        数字类型和字符串类型:
            简单的比较数值 or 字符串比较
        比较id:
            eg:
                a = 1.0; b = 1.0
                a == b >>> True #比较值
            a) id(a) == id(b)  >>> False
            b) a is b >>> False
            c) a is not b >>> True
            注:python通常会缓存[-1, 100]范围内的整数。因此有时候:
                a = 1; b = 1; a is b >>> True
        布尔类型
            使用not and or运算符
    标准类型的内建函数
        cmp(obj1, obj2):
            比较obj1和obj2,如果obj1大于obj2则返回正数,obj1小于obj2返回负数,obj1等于obj2返回0
            如果是用户自定义对象,则会调用__cmp__()函数
        str()和repr():
            都是返回对象的字符串表现形式。
            str()返回的字符串对人比较友好,可读性较高
            repr()返回的字符串对机器比较友好。repr()返回的字符串经常可以直接用eval()得到原来的对象
        isinstance():
            用来判断某个对象是否是特定类型的一种
            eg:
                num = 10
                isinstance(num, (int, long, float, complex) )
        type()函数:
            type(object) : 返回一个对象的类型,返回值为一个Type类型的对象实例
            对于Type类型的对象而言,
                import types
                type(0) == type(1) == ... == types.IntType
            并且:
                type(0) is types.IntType
            Java类比:同一个Java类型的不同实例,有obj1.getClass() == obj2.getClass()
    标准类型的分类:
        数据类型        存储模型        更新模型        访问模型
        数字         Scalar         不可更改         直接访问
        字符串         Scalar         不可更改         顺序访问
        列表         Container     可更改         顺序访问
        元组         Container     不可更改         顺序访问
        字典         Container     可更改         映射访问

posted on 2011-03-15 22:15 Antony Lee 阅读(301) 评论(0)  编辑  收藏 所属分类: Python学习笔记

只有注册用户登录后才能发表评论。


网站导航:
 

<2011年3月>
272812345
6789101112
13141516171819
20212223242526
272829303112
3456789

常用链接

留言簿(1)

随笔分类

随笔档案

文章分类

搜索

  •  

最新评论

阅读排行榜

评论排行榜