1. Python使用对象模型来存储数据,构造任何类型的值都是一个对象。
Python对象拥有三个特性:身份,类型和值。
- 身份,每个对象都有一个唯一身份标识自己,任何对象的身份都可以用内建函数id()来得到。这个值会被认为是该对象的内存地址。
- 类型,可以用type()查看python对象的类型,在Python中类型也是对象。
- 值,对象表示的数据项。
所有类型对象的类型都是type , 它也是所有python类型的根和所有python标准类的默认元类(metaclass)。
2. None,python的null对象
python有一个特殊类型,被称为Null对象或NoneType,它只有一个值,就是None。
所有标准对象均可用于布尔测试,同类型的对象之间可以比较大小。每个对象天生具有布尔True and False。
下列对象的布尔值是False: None Falls 所有值为零的数 0(整形) 0.0(浮点型) 0L(长整形) 0.0+0.0j(复数) ""(空字符串) [](空列表) ()(空元组) {}(空字典)
值不是上面列出来的额任何值的对象的布尔值都是True。
3. 内部类型
代码, 帧, 跟踪记录, 切片, 省略, Xrange
4. 存储模型
一个能保存单个字面对象的类型,我们称为原子或标量存储;可以容纳多个对象的类型,称之为容器存储。
5. 更新模型
| |
分类 | Python类型 |
可变类型 | 列表,字典 |
不可变类型 | 数字,字符串,元组 |
6. 标准类型分类
数据类型 | 存储模型 | 更新模型 | 访问模型 |
数字 | 标量 | 不可更改 | 直接访问 |
字符串 | 标量 | 不可更改 | 顺序访问 |
列表 | 容器 | 可更改 | 顺序访问 |
元组 | 容器 | 不可更改 | 顺序访问 |
字典 | 容器 | 可更爱 | 映射访问 |