最新公告
  • 欢迎您光临站盟网(原知事网),一个优质的网站源码基地、精品网站模板和插件。欢迎加入永久SVIP
  • python3类中的def __init()__如何使用?

    正文概述 知事网   2020-11-16 09:11   448

    Python教程中单个函数的使用小编也写了不少,说起基础的init函数也是我们的老朋友了。组合函数的要么是理解又一定的难度,要么是操作方法有复杂的地方。小编今天要讲的def __init()__属于第一种,只要小伙伴们理解透彻,使用起来并不困难。所以小编通过数学中的三角形给大家举例,在我们所熟知的知识中延展出新的内容。

    顾名思义,init是初始化的意思,init函数,也就是初始化函数,意思就是,当实例化类的时候,自动运行的函数,如果我们实例化的时候给类传了参数,参数也是呈交给这个函数来处理的。所以,你可以在init函数里写上任何你希望实例化的时候就自动执行的函数,比如像print(‘实例化已完成’)什么的都是可以的。

    但大部分时候,我们希望实例化的时候干些啥?当然是把数据传给类的属性啊,所以绝大部分情况下,init函数都充当了构造函数的作用,我们可以在这里面写明把传来的数据赋予谁,或经过怎样的预处理后再赋予谁。

    就拿那个三角形来说,我们希望在生成三角形(实例化)的时候,就给三角形生成器(类)传入三条边长,而不是实例化完了之后,再tr1.a=6,tr1.b=7这样的一个个赋值。所以我们直接就在init函数里写明了参数的传递规则。

    另外再说一句,在传入参数实例化后,除了可以查看,也是可以再次修改的:

    tr1.a
    ->6
     
    tr1.a=7
    tr1.a
    ->7

    拓展:那个self是什么东西,为什么要写self.a?

    我们在使用对象的属性的时候,写法是“对象名.属性名”,就像上面的tr1.a。在定义类的时候,为了保持一致,也要采用这种写法。但由于类定义的时候,还没有实例化,并不清楚对象名是什么,所以可以随便写一个(但要前后一致),一般都写self。

    今天在python3类中init组合函数就讲到这里了。基础函数延展后都出成了一个新的知识点,小伙伴们学习的过程中可以举一反三试试,说不定就突然增加了新技能哦~

    转载自:python学习网 https://www.py.cn/


    站盟网 » python3类中的def __init()__如何使用?

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者
    请选择支付方式
    ×
    支付宝支付
    微信支付
    余额支付
    ×
    微信扫码支付 0 元