python怎么理解类【python定义类】

589次阅读
没有评论

python怎么理解类【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是指“自己”,是指“实例化”以后的那个人的“自己”。

什么叫实例化?就是别人听不懂的时候,举个例子。比如什么是人类?张三就是人类(之一)。举例子这个过程叫“实例化”,“张三”就是实例。然后接下来,就可以拿张三说事儿了,这时候,张三就是我们谈话的“对象”,定义一下,对象就是类的具体实例。

现在知道为什么定义类了吗?这么设想一下,如果不定义类,让你输出一千个人的工作时间,你会不会觉得很繁琐?

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:wuyou2019-12-27发表,共计1342字。
新手QQ群:570568346,欢迎进群讨论 Python51学习
评论(没有评论)