• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Python对象类型的详细介绍

python 搞代码 4年前 (2022-01-09) 25次浏览 已收录 0个评论

对于python,一切事物都是对象,程序中存储的所有数据都是对象,对象基于类创建计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。
class 指自定义类型,type 指内置类型。两者都表示数据类型,称呼不同而已
每个对象都有一个身份、一个类型和一个值,身份指对象在内存中所处位置的指针(内存中的地址),内置函数id()可返回一个对象的身份。变量名就是引用这个具体位置的名称
实例化:创建特定类型的对象
实例被创建后,其身份和类型不可改变
若对象值可修改,称为可变对象
若对象值不可修改,称为不可变对象
容器:某个对象包含对其它对象的引用,如 列表。
python是强类型语言,对象所属的类型决定了这个对象所能参与的操作或它支持的方法,即方法存在类中,对象里具有的功能都是去类里找的。
大多数对象都有大量特有的数据属性和方法
属性:与对象相关的值,如 变量名
方法:被调用时将在对象上执行某些操作的函数

python会把类型中经常使用的操作做成
1.内置方法
2.语法糖,自动触动方法

Python对象类型及其运算

基本要点:    程序中储存的所有数据都是对象(可变对象:值可以修改   不可变对象:值不可修改)    每个对象都有一个身份、一个类型、一个值        例:            >>> a1 = 'abc'            >>> type(a1)            str                创建一个字符串对象,其身份是指向它在内存中所处的指针(在内存中的位置)                a1就是引用这个具体位置的名称                使用type()函数查看其类型                其值就是'abc'     自定义类型使用class     对象的类型用于描述对象的内部表示及其支持的方法和操作     创建特定类型的对象,也将该对象称为该类型的实例,实例被创建后,其身份和类型就不可改变     容器:某对象内包含对其它对象的引用          对象拥有特有的数据属性和方法,使用点运算符调用            数据:变量            方法:函数

1)对象的身份和类型

两个对象比较:    1、值比较:对象中的数据是否相同;    2、身份比较:两个变量名引用的是否为同一对象;    3、类型比较:两个对象的类型是否相同;注意:    内置函数id()可返回对象的身份即在内存中的位置    is比较两个对象的身份    type()返回对象的类型        例:            >>> num1 = 5            >>> num2 = 6            >>> num1 == num2                值比较            False                               >>> num1 is num2                身份比较            True            >>> type(num1) is type(num2)    类型比较            True

2)核心数据类型

    数字:int, long, float, complex(复数), bool    字符:str, unicode    列表:list    字典:dict    元组: tuple    文件:file    其它类型:集合(set), frozenset, 类类型, None

3)类型转换

        str(), repr()或format():将非字符型数据转换为字符;        int():                   转为整数        float():                 转为浮点数        list(s):                 将字串s转为列表        tuple(s):                将字串s转为元组        set(s):                  将字串s转为集合        frozenset(s):            将字串s转换为不可变集合;        dict(d):                 创建字典;其d必须是(key, value)的元组序列例:    >>> str1 = 'hello,fanison'    >>> list(str1)    ['h', 'e', 'l', 'l', 'o', ',', 'f', 'a', 'n', 'i', 's', 'o', 'n']    >>> tuple(str1)    ('h', 'e', 'l', 'l', 'o', ',', 'f', 'a', 'n', 'i', 's', 'o', 'n')    >>> set(str1)    set(['a', 'e', 'f', 'i', 'h', 'l', 'o', ',', 's', 'n'])       特别注意!!!去重    >>> l1=[('a',1),('b',2),('c',3)]    >>> list(l1)    {'a': 1, 'c': 3, 'b': 2}    补充例题:        >>> a = 'ABC'        >>> b = a        >>&g<p style="color:transparent">本文来源gao!%daima.com搞$代*!码$网3</p>t; a = 'XYZ'        >>> print a  b        'XYZ'  'ABC'    图解过程

4)数字类型操作

    5种数字类型:整型、长整型、浮点型、复数、布尔型    所有数字类型均不可变        >>> a = 10    # 整型         >>> b = 1.5   # 浮点型        >>> c = True  # 布尔型        >>> d = 5+2j  # 复数        例:            >>> 1 + 2                3            >>> 1.0 + 2            3.0            >>> 11 % 4                3            >>> 11.0 / 4                 2.75            整数和浮点数混合运算的结果是浮点数

5)布尔类型

    bool(布尔型)之所以属于数字类型,是因为bool是int的子类。            >>> int(True)            1            >>> int(False)            0            >>> bool(1)            True            >>> bool(-1)            True            >>> bool(0)            False        结论:            bool 转 int时, Ture-->1, False-->0            int 转 bool时, 非0-->True, 0-->False        与运算:只有两个布尔值都为 True 时,计算结果才为 True。                >>> True and True           True        >>> True and False        False        >>> False and True        False        >>> False and False        False    或运算:只要有一个布尔值为 True,计算结果就是 True。                >>> True or True        True        >>> True or False        True        >>> False or True        True        >>> False or False        False    非运算:把True变为False,或者把False变为True:                >>> not True        False        >>> not False        True        注意:1、任何非0数字和非空对象都为真;          2、数字0、空对象和特殊对象None均为假;        and 和 or 运算的一条重要法则:短路计算。            1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。                2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。               所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。    例:       >>> a = 'python'       >>> print 'hello,', a or 'fanison'       hello,python       >>> b = ''       >>> print 'hello,', b or 'fanison'       hello,fanison

以上就是Python对象类型的详细介绍的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Python对象类型的详细介绍

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址