码迷,mamicode.com
首页 > 编程语言 > 详细

python之_init_()方法浅析

时间:2019-01-16 15:00:31      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:复用   print   类别   pytho   core   student   攻击   class   zha   

在python的类中,我们会经常看到一个类中的一个方法_init_(self) ,比如下面的一个例子:

class Student(object):
    def __init__(self,name,weight,score):
        self.name = name
        self.weight = weight
        self.score = score

jack = Student(‘忙德‘,200,59)
print(jack.name)
print(jack.score)
print(jack.weight)

 很多人心中经常疑问,为什么会有_init_()函数?

_init_()函数是给强制绑定的属性,就是实例化类的时候,必须传进去这些属性。这些属性也是这些类别区别其他类的特征。

举个例子,玩过王者荣耀的朋友们,如果英雄是类的话,程咬金,露娜,鲁班,娜可露露这些英雄就是对象。

class Hero(object):
    def __init__(self,mingzi,paiwei,dazhao):
        self.name = mingzi
        self.weight = paiwei
        self.skill = dazhao
    #
    def run(self):
        print({}快跑,并且释放你的大招{}.format(self.name,self.skill))
    #攻击
    def attack(self):
        print({}使用{}向你攻击.format(self.name,self.skill))
    #回城
    def home(self):
        print({}血量不足,要回城了.format(self.name))
    #排位
    def rank(self):
        print({}目前的排位是{}.format(self.name,self.weight))
    def work(self):
        print(self.run(),self.attack(),self.home(),self.rank())

chengyaojin = Hero(程咬金,荣耀黄金iv,战斧之刃)
sunwukong = Hero(孙悟空,钻石iv,天崩地裂)
#程咬金整套动作
chengyaojin.work()
#孙悟空整套动作
sunwukong.work()
#程咬金回家
chengyaojin.home()

 你看我们只需要定义一个类,这样我们就可以实例化无数个对象,很方便,提高代码的复用性

python之_init_()方法浅析

标签:复用   print   类别   pytho   core   student   攻击   class   zha   

原文地址:https://www.cnblogs.com/chaojiyingxiong/p/10273818.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!