python之类和对象(一)
一、类和对象
1、类和对象的定义
1)在某些个体之间具有相同的特征和行为,称为一个类
2)对象:类的实例化,指具体的某个东西,是一类事物中的个体(成员)
2、类的命名规范
1)首字母需要大写,驼峰式命名
2)类名需要做到见名知意,提高代码的可读性
3、类的定义(关键字class)
第一种:class 类名:
第二种:class 类名():
第三种:class 类名(object):
三种方式定义类效果都是一样的,常用第一种
4、创建实例
1)先有类后有对象,故先需要定义类,然后再创建实例
2)初始化方法__init__()
类中定义初始化方法def __init__(self,variable1...),当创建实例的时候,python会自动运行它。
当初始化方法没有参数时,定义类的时候可以不用定义初始化方法,python默认添加无参数的初始化方法。
初始化方法没有返回值
self:实例本身,在类定义的过程中,类的里面代表一个实例
3)创建实例
实例 = 类名()
实例 = 类名(变量1,变量2...):传入参数的数量和类型由初始化方法的参数决定
4)内存地址相同,表示是同一个对象(实例),可使用id(object)函数获取对象的内存地址
实例的比较:同一个类的两个实例是不相等,属于两个对象,在内存中的地址不一样
Car() == Car() 为False
类的比较:相同的类是相等的,Car == Car 为True
5、类属性和实例属性
类属性(类变量)
1)类属性的定义
所有对象都具有的属性,相同的特性,类属性是定义类的代码块中定义的类变量
2)类属性的调用
类.类属性
实例.类属性
3)类属性的修改
类.类属性 = new_value:可修改成功,影响整个类
实例.类属性 = new_value:该实例的属性可修改成功,但不影响整个类,只是修改了自己的属性
实例属性(实例变量)
1)实例属性的定义
个体具备的特征,对象的个性化属性,实例属性是在__init__(self,变量1,变量2)对象初始化方法中定义的实例变量,实列属性的定义:self.属性
2)实例属性的调用
实例.实例属性
类.实例属性(会报错,报AttributeError,因为类中没有该类属性)
3)实例属性的修改
实例.实例属性 = new_value:可修改该实例的属性
类名.实例属性 = new_value:此处定义了一个类属性,名字与实例变量名相同,实例属性是未被修改的。