Python学习1:Python对象模型
1. 对象模型
Python中对象是所有数据的抽象。所有Python程序中的值都由对象或者对象之间的关系表示。
2. Python对象的特性
- identity
- type
- value
2.1 identity
Python中每个对象有一个唯一标识identity,一个对象的标识在对象被创建后不再改变。可以认为对象的identity是对象在内存中的地址,其值可以由内置函数id()求得。is操作符可以比较两个对象的identity是否相同,即两个对象是否是同一个。
if a is b:
print ‘a and b are the same object’
2.2 type
type 是对象的类型,决定了对象保存值的类型、可以执行的操作,以及所遵循的规则。可以使用内置函数type()查看一个对象的类型。因为Python中一切皆是对象,type() 函数返回的也是对象,而不是简单字符串。
>>> i = 1
>>> type(i)
<type 'int'>
>>> s = "test"
>>> type(s)
<type 'str'>
2.3 value
对象表示的数据。值是可变的,值可变的对象称为mutable对象,值一经创建不可再变的对象称为immutable对象。一个对象的可变性由其类型决定,例如 数字, 字符串 和元组是不可变的, 而字典和裂变则是可变的。
3. 对象属性
有些Python对象有属性、值或相关联的可执行代码,比如方法。Python中使用(.)标记访问对象属性。最常用的属性是函数和方法,一些Python类型还有数据属性。类、类实例、模块、复数和文件含有数据属性。
参考
[1] Python核心编程第二版
[2] data model
[3] Types and Objects in Python
作者:freealvin
链接:http://www.jianshu.com/p/d82661a8067e
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

浙公网安备 33010602011771号