python怎么理解类
作为一个刚刚入门python的小白,对于类这个概念很是不理解,什么时候应该定义类,以及这个类有什么作用呢?归纳总结如下:
类(class):类是对现实生活中一类具有共同特征的事物的抽象
先放上代码,边看边说
参考代码
# 定义“人”类 class Person(object): class_name = "人类" #初始化时需要给“人”分配一个名字name # 工作时长 working_time则留给“男人”和“女人”去分开定义 def __init__(self, name): self.name = name self.working_time = None #定义一个方法,它能输出工作时长 def work(self): print(self.working_time) #还可以定义其他方法 # 定义“男人”类, 它需要“继承”“人”类 class Man(Person): def __init__(self, name): # 调用“人”类的初始化方法以完成继承 Person.__init__(self, name) # 定义工作时长 self.working_time = 8 # 定义“女人”类,它需要“继承”“人”类 class Woman(Person): def __init__(self, name): # 调用“人”类的初始化方法以完成继承 Person.__init__(self, name) # 定义工作时长 self.working_time = 6 print(Person.class_name) # 输出 人类 zhangsan = Man("zhangsan") print(zhangsan.working_time) # 输出 8 Lisi = Woman("Lisi") print(Lisi.working_time) # 输出 6
第一行,这是Python3的固定语法。当然Person是我们自己命名的类名称,通常建议第一个字母大写。(object)也是固定语法。
第二行,class_name变量是一个类变量,它的值将在这个类的所有实例之间共享。
接下来,第一个def,被称为类的“构造函数”或“初始化方法”,其实就是这个类的基本信息,当创建了这个类的“实例”,就可以调用这些基本信息。__init__也是固定格式。在这里有两个参数self, name对应“自己,姓名”,其实你都可以自己喜欢的名字,当然第一个self也是大家约定俗成的,这里的self是指“自己”,是指“实例化”以后的那个人的“自己”。
什么叫实例化?就是别人听不懂的时候,举个例子。比如什么是人类?张三就是人类(之一)。举例子这个过程叫“实例化”,“张三”就是实例。然后接下来,就可以拿张三说事儿了,这时候,张三就是我们谈话的“对象”,定义一下,对象就是类的具体实例。
现在知道为什么定义类了吗?这么设想一下,如果不定义类,让你输出一千个人的工作时间,你会不会觉得很繁琐?
更多python教程,请点击云海天教程网。
来源:PY学习网:原文地址:https://www.py.cn/article.html