python之_init_()方法浅析
在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_()方法浅析的更多相关文章
- 自学Python5.4-类 _init_方法
自学Python之路 自学Python5.4-类 _init_方法 1. 定义一个类 定义一个类的格式如下:
- Python测试函数的方法之一
Python测试函数的方法之一 首先介绍简单的try......except尝试运行的放例如下面的图和代码来简单介绍下: 注释:提醒以下代码环境为2.7.x 请3.x以上的同学们老规矩print(把打 ...
- 使用python原生的方法实现发送email
使用python原生的方法实现发送email import smtplib from email.mime.text import MIMEText from email.mime.multipart ...
- Python中sorted()方法
Python中sorted()方法的用法 1.先说一下iterable,中文意思是迭代器. Python的帮助文档中对iterable的解释是:iteralbe指的是能够一次返回它的一个成员的对象.i ...
- python类及其方法
python类及其方法 一.介绍 在 Python 中,面向对象编程主要有两个主题,就是类和类实例类与实例:类与实例相互关联着:类是对象的定义,而实例是"真正的实物",它存放了类中 ...
- Python内置方法的时间复杂度(转)
原文:http://www.orangecube.net/python-time-complexity 本文翻译自Python Wiki本文基于GPL v2协议,转载请保留此协议. 本页面涵盖了Pyt ...
- Python LOGGING使用方法
Python LOGGING使用方法 1. 简介 使用场景 场景 适合使用的方法 在终端输出程序或脚本的使用方法 print 报告一个事件的发生(例如状态的修改) logging.info()或log ...
- [Python]读写文件方法
http://www.cnblogs.com/lovebread/archive/2009/12/24/1631108.html [Python]读写文件方法 http://www.cnblogs.c ...
- 转最简便安装python+selenium-webdriver环境方法
最简便安装python+selenium-webdriver环境方法 from:http://www.easonhan.info/python/2013/12/07/active-python-ins ...
随机推荐
- python爬虫——爬取淘票票正在热映电影
今天正好学习了一下python的爬虫,觉得收获蛮大的,所以写一篇博客帮助想学习爬虫的伙伴们. 这里我就以一个简单地爬取淘票票正在热映电影为例,介绍一下一个爬虫的完整流程. 首先,话不多说,上干货——源 ...
- pandas入门(1)
import pandas as pd import numpy as np # 自动创建索引 obj = pd.Series([4, 7, -5, 2]) print(obj, type(obj)) ...
- java静态代码块,构造方法,初始化块的执行顺序
代码Parent和Sub进行讲解 public class Parent { private static final String name; public Parent() { System.ou ...
- Spring MVC-学习笔记(1)认识spring mvc
1.基于XML Schema.Controller接口的spring mvc简单例子 1>创建一个动态Web项目,选择同时创建web.xml文件 2>在WEB-INF/lib中粘贴spri ...
- solr 安装与配置
1. Solr安装与配置 1.1什么是Solr 大多数搜索引擎应用都必须具有某种搜索功能,问题是搜索功能往往是巨大的资源消耗并且它们由于沉重的数据库加载而拖垮你的应用的性能. 这就是为什么转移负载到一 ...
- python为什么人们喜欢学习呢?
软件的质和量. 既有量的积累也有质的区别.继承一定的前人研究基础. 基本上来说,python更加的注重可读性,一致性,可移植性,其中软件的质量也是比较的讲究的. python支持开发的高级重用机制,例 ...
- 20、前端知识点--html5和css3特性(一)
[html5/css3]css中的flex弹性布局学习总结 https://blog.csdn.net/Umbrella_Um/article/details/99490209 用CSS/CSS3 实 ...
- TensorFlow——MNIST手写数字识别
MNIST手写数字识别 MNIST数据集介绍和下载:http://yann.lecun.com/exdb/mnist/ 一.数据集介绍: MNIST是一个入门级的计算机视觉数据集 下载下来的数据集 ...
- 日志处理--高效Linux命令整理
序 在学习使用python处理日志开始阶段,对我阻力最大的莫过于对linux的不熟悉了,有种寸步难行的感觉. 在之后乱学一通之后,发现有点对我颇有益处: 学<鸟哥linux私房菜基础学习篇> ...
- Linux架构之Nginx Web基础1
第41章 Nginx Web基础入门 41.1 Nginx部署 41.1.1 Nginx的安装方式 源码编译 官方仓库 epel仓库 优点 规范 安装简单 安装简单 便于管理 配置易读 缺 ...