在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_()方法浅析的更多相关文章

  1. 自学Python5.4-类 _init_方法

    自学Python之路 自学Python5.4-类  _init_方法 1. 定义一个类 定义一个类的格式如下:

  2. Python测试函数的方法之一

    Python测试函数的方法之一 首先介绍简单的try......except尝试运行的放例如下面的图和代码来简单介绍下: 注释:提醒以下代码环境为2.7.x 请3.x以上的同学们老规矩print(把打 ...

  3. 使用python原生的方法实现发送email

    使用python原生的方法实现发送email import smtplib from email.mime.text import MIMEText from email.mime.multipart ...

  4. Python中sorted()方法

    Python中sorted()方法的用法 1.先说一下iterable,中文意思是迭代器. Python的帮助文档中对iterable的解释是:iteralbe指的是能够一次返回它的一个成员的对象.i ...

  5. python类及其方法

    python类及其方法 一.介绍 在 Python 中,面向对象编程主要有两个主题,就是类和类实例类与实例:类与实例相互关联着:类是对象的定义,而实例是"真正的实物",它存放了类中 ...

  6. Python内置方法的时间复杂度(转)

    原文:http://www.orangecube.net/python-time-complexity 本文翻译自Python Wiki本文基于GPL v2协议,转载请保留此协议. 本页面涵盖了Pyt ...

  7. Python LOGGING使用方法

    Python LOGGING使用方法 1. 简介 使用场景 场景 适合使用的方法 在终端输出程序或脚本的使用方法 print 报告一个事件的发生(例如状态的修改) logging.info()或log ...

  8. [Python]读写文件方法

    http://www.cnblogs.com/lovebread/archive/2009/12/24/1631108.html [Python]读写文件方法 http://www.cnblogs.c ...

  9. 转最简便安装python+selenium-webdriver环境方法

    最简便安装python+selenium-webdriver环境方法 from:http://www.easonhan.info/python/2013/12/07/active-python-ins ...

随机推荐

  1. Nginx主要功能及使用

    Nginx配置详解   序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的.从2004年发布至今,凭借开源的力量,已经接近成熟与完善. Nginx功能丰富, ...

  2. SpringCloud启动Eureka server时报错 java.lang.TypeNotPresentException: Type javax.xml.bind.JAXBContext not present

    SpringBoot打开Eureka server时出现以下错误: java.lang.TypeNotPresentException: Type javax.xml.bind.JAXBContext ...

  3. ios平台appstore不支持网页内嵌app解决方案

    苹果一直拒绝 UIWebView 内嵌 HTML5 页面的 iPhone.iPad APP应用上架到 App Store,建议这样的APP去做成Safari的Web应用.但是,苹果的审核人员只从界面. ...

  4. pandas 入门(2)

    from pandas import Series, DataFrame, Index import numpy as np from numpy import nan as NA obj = Ser ...

  5. JS中类或对象的定义说明

    本篇文章主要是对JS中类或对象的定义进行说明介绍.我们知道,JS是面向对象的.谈到面向对象,就不可避免的要涉及类的概念.一般像c#,java这些强类型语言都有固定的定义类的语法.而JS的不同之处在于它 ...

  6. weakHashMap 用法

    WeakHashMap,此种Map的特点是: 当除了自身有对key的引用外,此key没有其他引用,那么GC之后此map会自动丢弃此值 当使用 WeakHashMap 时,即使没有显示的添加或删除任何元 ...

  7. Maya2019下载安装与激活

    目录 1. 更多推荐 2. 下载地址 2.1. OneDrive 2.2. Window (64位) 2.3. MAC_OSX 3. 安装激活教程 1. 更多推荐 其他Maya版本的下载与激活:htt ...

  8. 211-基于FMC的ADC-DAC子卡

    基于FMC的ADC-DAC子卡 一.板卡概述 FMC-1AD-1DA-1SYNC是我司自主研发的一款1路1G AD采集.1路2.5G DA回放的FMC.1路AD同步信号子卡.板卡采用标准FMC子卡架构 ...

  9. 脚本_查看所有虚拟机磁盘以及 CPU 的使用量

    #!bin/bash#作者:liusingbon#功能:查看所有虚拟机磁盘使用量以及 CPU 使用量信息read -p "按任意键进入查看页面.比如按下Enter键" keyvir ...

  10. linux权限管理—基本权限

    目录 Linux权限管理-基本权限 一.权限的基本概述 二.权限修改命令chmod 三.基础权限设置案例 四.属主属组修改命令chown Linux权限管理-基本权限 一.权限的基本概述 1.什么是权 ...