1.所有的Python 对像都拥有三个特性:身份,类型和值。
身份:
每一个对象都有一个唯一的身份标识自己,任何对象的身份可以使用内建函数id()来得到。 这个值可以被认为是该对象的内存地址。您极少会用到这个值,也不用太关心它究竟是什么。2.类型也是一种对象
>>> type(42)>>> type(type(42))
3. 整数对象和 字符串对象是不可变对象,所以Python 会很高效的缓存它们。
Python 仅缓存简单整数,因为它认为在Python 应用程序中这些小整数会经常被用到。目前,Python 缓存的整数范围是(-1, 100),不过这个范围是会改变的,所以请不要在你的应用程序使用这个特性。
4.标准类型构建函数
函数 功能
cmp(obj1, obj2) 比较 obj1 和 obj2, 根据比较结果返回整数 i: i < 0 if obj1 < obj2 i > 0 if obj1 > obj2 i == 0 if obj1 == obj2 repr(obj) 或 `obj` 返回一个对象的字符串表示 str(obj) 返回对象适合可读性好的字符串表示 type(obj) 得到一个对象的类型,并返回相应的type 对象注:str()函数得到的字符串可读性好, 而repr()函数得到的字符串通常可以用来重新获得该对象, 通常情况下 obj == eval(repr(obj)) 这个等式是成立的。需要提醒一下的是, 并不是所有repr()返回的字符串都能够eval()内建函数得到原来的对象。也就是说 repr() 输出对 Python 比较友好, 而str()的输出对人比较友好。
5.Python 不支持方法或函数重载, 因此你必须自己保证调用的就是你想要的函数或对象。
6.类型工厂函数
Python 2.2 统一了类型和类, 所有的内建类型现在也都是类, 在这基础之上, 原来的所谓内建转换函数象int(), type(), list() 等等, 现在都成了工厂函数。 也就是说虽然他们看上去有点象函数, 实质上他们是类。当你调用它们时, 实际上是生成了该类型的一个实例。
7.标准类型的分类
a.存储模型
标量/原子类型 数值(所有的数值类型),字符串(全部是文字)
容器类型 列表、元组、字典b.更新模型
可变类型 列表, 字典
不可变类型 数字、字符串、元组c.访问模型
分类 Python 类型
直接访问 数字 顺序访问 字符串、列表、元组 映射访问 字典