Python 中所有的数据都可以被视为 对象 (object)。
每个对象都有各自的标识、类型和值。
对象的类型
每个对象都有对应的 类型 (type) / 类 (class)。
可以使用内置的 type() 函数和 isinstance() 函数来判断对象的类型。
对象的标识
每个对象在其生命周期内都有一个唯一的 标识符 (id)。这个标识符通常是对象在内存中的地址。
一个对象被创建后,它的标识就绝不会改变。
is 运算符可以比较两个对象的标识号是否相同;id() 函数能返回一个代表其标识的整数。
对象的值
对象的 值 (value) 是指对象所包含的数据或状态。
有的对象一旦创建其值就不可改变,任何修改操作都会生成新的对象,称为 不可变对象,例如数字、字符串和元组;反之称为 可变对象,修改值后对象的标识不变,例如列表。
对象的属性和方法
一些对象都有各自的 属性 (attribute) 和 方法 (method)。
可以通过点号 (.) 读取或修改对象的属性和调用对象的方法。如果尝试访问一个对象不存在的属性或者方法,会引发 AttributeError 异常。
使用对象
内置类的对象
整数、浮点数、字符串、列表、字典等内置数据类型(类)的实例都是对象,它们有各自的属性和方法。
可以通过字面量或者一些函数等方式创建这类对象,并且可以使用其拥有的属性和方法。
自定义类的对象
使用 自定义类 可以定义自己的对象。
特殊类型的对象
可迭代对象:可以逐个返回其元素的对象。
迭代器对象:可以记住当前遍历的位置的对象。每次迭代可迭代对象时,都会创建一个新的迭代器对象。