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 身份比较
比较运算符是针对对象的值进行的,而判断两个变量是否指向同一个对象(身份比较)是通过is
或is not
进行的,两者是不一样的
>>> foo1 = 4.2>>> foo2 = 4.2>>> foo1 == foo2True>>> foo1 is foo2False
3.1.3 布尔逻辑运算
布尔逻辑运算not
、and
、or
从左至右优先级依次降低
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开始的索引顺序访问,如列表、元组、字符串
映射访问:元素无序存放,通过唯一的键访问,如字典
- python 核心编程&对象
- Python核心编程----Python对象
- 《Python核心编程》笔记 Python对象
- 《Python核心编程》笔记 Python对象
- python核心编程——python对象
- 《Python核心编程》第四章:Python 对象
- Python核心编程读书笔记--面向对象编程
- python核心编程-默认函数对象参数
- Python 核心编程笔记_Chapter_4_Note_1 对象属性
- Python核心编程——第四章Python对象
- Python 核心编程笔记 第三章 Python对象
- 2015-03-19-python核心编程(三)Python对象
- 《Python核心编程》第二版--第四章 Python对象
- python核心编程(四)— python对象
- 《Python核心编程》(第二版) 第4章 Python对象
- Python核心编程---读书笔记:第4章 Python对象
- 《Python核心编程》第13章 面向对象编程 练习
- 《Python核心编程》 面向对象编程学习笔记
- JQuery删除和添加子节点
- 史上最全最强SpringMVC详细示例实战教程
- spring--mybatis--activeMQ集成(一)
- Android studio如何使用SVN进行版本控制
- 第八课 IDEA开发spark
- python 核心编程&对象
- ProgressDialog使用总结
- lxml: Cannot import lxml.html.soupparser.fromstring, depends on outdated BeautifulSoup
- 【数据结构】算法10.4-10.5 插入排序-希尔
- git使用方法
- hdu5000 Clone dp
- Java线程之线程的五种状态
- lightoj 1021 从当前转移到其他状态的状压dp
- Java基础——实现UDP发送数据和接收数据