所有的 Python 对像都拥有三个特性:身份,类型和值
1、身份:
每一个对象都有一个唯一的身份标识自己,任何对象的身份可以使用内建函数 id()来得到。这个值可以被认为是该对象的内存地址。
2、类型
对象的类型决定了该对象可以保存什么类型的值,可以进行什么样的操作,以及遵循什么样的规则。您可以用内建函数 type()查看 Python 对象的类型。因为在 Python 中类型也是对象(还记得我们提到 Python 是面向对象的这句话吗?),所以 type()返回的是对象而不是简单的字符串。
3、值
对象表示的数据项
上面三个特性在对象创建的时候就被赋值,除了值之外,其它两个特性都是只读的。对于新风格的类型和类, 对象的类型也是可以改变的,不过对于初学者并不推荐这样做。
标准类型分类
1、以存储模型为标准的类型分类
存储模型
分类 Python 类型
标量/原子类型 数值(所有的数值类型),字符串(全部是文字)
容器类型 列表、元组、字典
2、以更新模型为标准的类型分类
更新模型
分类 Python 类型
可变类型 列表, 字典
不可变类型 数字、字符串、元组
3、以访问模型为标准的类型分类
访问模型
分类 Python 类型
直接访问 数字
顺序访问 字符串、列表、元组
映射访问 字典
4、标准类型分类
-------------------------------------------------------------------------------------
数据类型 | 存储模型 | 更新模型 | 访问模型
数字 | Scalar | 不可更改 | 直接访问
字符串 | Scalar | 不可更改 | 顺序访问
列表 | Container | 可更改 | 顺序访问
元组 | Container | 不可更改 | 顺序访问
字典 | Container | 可更改 | 映射访问
---------------------------------------------------------------------------------------
5、python不支持的类型
char、byte、指针