python 核心编程&对象

来源:互联网 发布:中国股市现状 知乎 编辑:程序博客网 时间:2024/06/11 08:32

这篇博客主要讲述一些有关对象的知识,如特性、分类(标准类型内建类型),其中针对标准类型详细描述了其内建函数和分类。

1.特性

所有的python对象都拥有三个特性:身份、类型、值

身份(id):该对象的内存地址,可以使用内建函数id()得到

类型(type):该对象的类型,可以使用内建函数type()得到

值(value):该对象表示的数据项

2.基本分类

总的来说,python对象一般分为两大类:标准类型(数字型、序列、字典)、内建类型(类型、None、文件、集合、函数、模块、类)。接下来的几天 ,我会撰写几篇文章来重点描述数字型序列字典文件集合函数模块

现在先简单介绍一下类型与None对象。

2.1 类型对象

通过调用内建函数type()会返回一个类型对象,该对象会告诉你特定对象的类型信息。

>>> type(42)<type 'int'>>>> type(type(42))<type 'type'>

上面的例子中,type(42)是一个类型对象,它告诉了你42是一个int对象。

2.2 None对象

None没有什么有用的属性,其布尔值总是False

空对象、值为零的任何数字、False、None的布尔值都是False,其余对象的布尔值都是True

3.标准类型

在上一节,提到了标准类型对象。那么,接下来就介绍一下关于标准类型对象的某些操作

3.1 运算符

3.1.1 值比较

通过比较运算符来比较同类型对象的值大小是比较值主要方法。常用的比较运算符有:==<=>=!=

3.1.2 身份比较

比较运算符是针对对象的值进行的,而判断两个变量是否指向同一个对象(身份比较)是通过isis not进行的,两者是不一样的

>>> foo1 = 4.2>>> foo2 = 4.2>>> foo1 == foo2True>>> foo1 is foo2False

3.1.3 布尔逻辑运算

布尔逻辑运算notandor从左至右优先级依次降低

3.2 内建函数

3.2.1 type()

type()接受一个对象做为参数,并返回它的类型,其返回值是一个类型对象

3.2.2 cmp()

cmp()用于比较两个对象obj1和obj2,如果obj1小于obj2,则返回一个负整数;如果obj1大于obj2,返回一个正整数;如果obj1等于obj2,则返回0.

3.2.3 str()和repr()

内建函数str()repr()都是以字符串的方式获取对象的内容、类型、数值属性等信息

>>> str([0,5,9])'[0,5,9]'>>> repr([0,5,9])'[0,5,9]'

3.3 分类

标准类型对象可以按三个维度进行划分:存储模型、更新模型、访问模型

3.3.1 存储模型

原子或标量存储:能保存单个对象的类型,如数字、字符串
容器存储:可容纳多个对象的类型,如列表、元组、字典

3.3.2 更新模型

可变对象:允许其值被更改,如列表、字典
不可变对象:不允许其值被更改,如数字、字符串、元组

3.3.3 访问模型

直接访问:原子或标量存储类型,如数字
顺序访问:容器内的元素按从0开始的索引顺序访问,如列表、元组、字符串
映射访问:元素无序存放,通过唯一的键访问,如字典

0 0
原创粉丝点击