这一节,主要是针对类、对象、类属性、实例属性的一个简单说明 1. 概念: 1) 类:是具有共同属性以及共同行为的一类事务,是一个集合 2) 对象:就是具体到某类的个体,,是类事物的具体存在,是真实存在的(也就是平时所说的类的实例化) 3)类属性:这个类的共同特征,定义在类的变量和方法 4)实例属性: 对象自己的属性和方法 5)__init__函数: 一般用于对对象进行初始化设置,一般用户定义类的共同属性,但是属性的值不一样
2. 类命名规则: 1) 由字母、数字,下划线组成,且不以数字开头 2)驼峰式命名方式: TestCase MyClass InsertDataToFile’’’(首字母大写)
3. 使用实例来说明类、对象、类属性、实例属性这几个概念&如何应用: 定义一个人类People, 有属性:吃饭,睡觉,年龄,性别,名字 行为:跑步,参数:minutes,distance (该方法实现了多长时间内跑步距离)
我们先进行分析: 1) 对属性进行分析: a. 吃饭,睡觉,这两个属性是所有人都会的,都有的 b. 年龄,身高,体重,性别 是所有人都有的属性,但是跟吃饭和睡觉不一样的点是,每个人(即:对象)的身高、体重、性别、年龄可能不一样,所以,年龄,身高,体重,性别 是一个动态的变量 通过概念对比,我们就可以比较清楚的知道: a‘ 吃饭,睡觉,这两个属性是所有人都会的,是人类People的共有特征,所以是类属性 b' 年龄,性别,名字这几个属性也是所有人都有的属性,但不同对象可能不同的值,所以是实例属性(具体到每一个对象的 属性) 2) 行为分析:跑步这个行为是每一个人都会的,但是每个人在固定时间范围内跑步的距离也是不一样的,具体到类的对象的时 候,才可以有这个行为,所以定义为实例方法 代码如下: # -*-coding:utf8-*- """ ========================================= author: Lujier time: 2019/5/26 E-mail: 2327994109@qq.com ========================================== """ class People: """ 定义一个人类People, 有属性:吃饭,睡觉,年龄,身高,体重,性别, 名字 行为:跑步 """ behavior_1 = "吃饭" # 类属性定义 behavior_2 = '睡觉' def __init__(self, name, sex, age): """ :param name: user's name---->str :param sex: user's sex---->str :param age: user's age---->int """ self.name = name # 实例属性定义 self.sex = sex self.age = age def run(self, minites, distance): # 定义一个跑步的方法,实例方法,self代表实例对象 """ :param minites: ran for how long time----->int :param distance: ran many kilometers----->int """ print(f"{self.name}在{minites}跑了{distance}公里") def introduce(self): # 定义一个自我介绍的方法,self代表实例对象 print(f"My name is {self.name}, I'm a {self.sex} ,and I'm {self.age} year old") if __name__ == "__main__": xiaming = People("小明", "boy", 18) # 创建一个对象xiaoming 即:类的一个实例化对象:xiaoming xiahua = People("小花", "girl", 17) # 创建一个xiaohua对象4. 属性&方法的调用 1) 类属性的访问:类&对象都可以访问类属性
2)实例属性的访问:实例属性只能别实例对象访问,类不能直接访问 3) 实例方法的访问:实例方法只能别实例对象访问,类不能直接访问 实例属性&实例方法,类不能直接访问到,但是其实可以类可以通过另一种方式来访问实例方法: 类名.函数名(对象名,函数参数) People.introduce(xiaoming) 但是:一般我们是不会采用这种方法去访问实例方法的,我们一般都采用:对象名.方法名(参数)来调用函数的
这一节主要就是理解下类的:类、对象、类属性、实例属性理解,希望对你有所帮助