在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()

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

最新文章

  1. iOS tableView右滑显示选择
  2. C# CRC-CCITT (Kermit)校验方法
  3. Java-继承,多态练习09-22-01
  4. [LeetCode] Maximal Rectangle
  5. Apache Storm 的历史及经验教训——Nathan Marz【翻译】
  6. 微信公众平台开发之微信access_token如何有效长期保存
  7. SQL数据库设计三范式
  8. URAL 1009 K-based numbers(DP递推)
  9. 彻底领悟javascript中的this
  10. 超过1个G免费资源,16套质量超高风格多样的移动UIKIT
  11. Docker 容器
  12. JDK 1.8判断集合种的元素是否存在相同
  13. java的坦克大战
  14. 51单片机学习笔记(清翔版)(21)——ADDA数模转换
  15. 打造SharePoint之在线开发神器SPOnlineDevelopTool(一)——概述
  16. docker 安全
  17. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验六:数码管模块
  18. 跟着未名学Office - 高效笔记OneNote
  19. HashTable、List、ArrayList的经典使用和相互转换
  20. vue 实战问题-watch 数组或者对象

热门文章

  1. unity 编辑器教程
  2. GARENA面试
  3. oracle--高级使用(merge)(递归START WITH)分析函数over
  4. python基础-6.2正则表达式,计算器练习
  5. vue 上传文件 并以表格形式显示在页面上
  6. Java 动态代理及AOP实现机制
  7. C语言 malloc()、memcpy()、free()等
  8. 大牛总结的 Git 使用技巧,写得太好了!
  9. 【摘】sizeof实现
  10. Html5移动端页面自适应布局详解(rem布局)