python类实例化_python基础8之类的实例化过程剖析
一、概述
之前我们说关于python中的类,都一脸懵逼,都想说,类这么牛逼到底是什么,什么才是类?下面我们就来讲讲,什么是类?它具有哪些特性。
二、类的语法
2.1 语法
class dog(object): #用class定义类
"dog class" #对类的说明
def __init__(self,name): #构造函数或者是构造方法,也可以叫初始化方法
self.name = name
def sayhi(self): #类方法
"sayhi funcation" #对类方法的说明
print("hello,i am a dog,my name is ",self.name)
d = dog("alex") #定义一个d的对象,叫实例
d.sayhi() #调用实例的方法
2.2 self关键字
有很多小伙伴不禁的疑问,这个self是什么鬼?为什么在执行sayhi函数时,上面的self.name可以在函数中被调用?如下图:
其实self 这个关键字相当于实例化对象本身(self相当于d),在实例化过程中,把自己传进去了,我们队上面的两行做一下解释:
2.3 函数__init__()
在类中__init__()函数叫构造函数,又叫构造方法,也可以叫初始化函数。它的作用就是初始化实例时,初始化传入实例的的默认值。如果不写__init__(),就会调用的默认为空的__init__(),说白了,这个方法不管你写不写,都会调用,而且,一旦实例化就会调用。
class dog(object):
"dog class"
def __init__(self,name): #构造方法,不写调用默认的构造方法
self.name = name
def eat(self,food):
print("the dog name is {0},it like food is {1}".format(self.name,food))
d = dog("alex")
d.eat("hotdog")
#输出
the dog name is alex,it like food is hotdog
三、总结
最后我们画一个图,来说明一下实话过程的图,不然真的很难理解这个玩意:
由上图可知:其实self,就是实例本身!你实例化时python会自动把这个实例本身通过self参数传进去。
python类实例化_python基础8之类的实例化过程剖析相关推荐
- python类介绍_Python基础介绍 | Class类
自从改用Python做数据挖掘以来,我就很少用面向对象的内容了,那啥是面向对象呢? 可以这么理解,如果我们能把代码组合成一个一个可以重复使用的类别,那么这能使程序的可复用性更高,以后只要用这个类别的东 ...
- python 类 字典_python基础类型—字典
字典 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必 ...
- Python学习教程(Python学习路线_Python基础学习教程_Python视频教程):初学者新手怎样快速入门Python
Python学习教程(Python学习路线_Python基础学习教程_Python视频教程):初学者新手怎样快速入门Python? 人生苦短,我用Python!!!短短几个字,现在在各大学习类平台随处 ...
- python describe函数_Python基础知识点梳理2,推荐收藏
接着昨天的基础知识点继续梳理,昨天的 Python基础知识梳理1 8.函数 1.定义函数: 使用关键字def来告诉python你要定义一个函数 接着指出函数名:如下面函数名是-greet_user ( ...
- python系列教程_python基础学习系列教程2-进阶之路中绕不开的知识点。
本文是在上一篇的基础上编写的,若要查看见:雨滴测试:python基础系列教程1-可能是你见过的最通俗易懂的教程zhuanlan.zhihu.com 五. python函数 所谓的函数,就是具有特定功 ...
- cpython python 区别面试_python基础教程之千万不要错过这几道Python面试题
第1题: python下多线程的限制以及多进程中传递参数的方式? python多线程有个全局解释器锁(global interpreter lock),简称GIL,这个GIL并不是python的特性, ...
- python组合和继承_Python基础系列讲解——继承派生和组合的概念剖析
Python作为一门面向对象的语言,它的面向对象体系中主要存在这么两种关系,一个是"类"和"实例"的关系,另一个是"父类"和"子类 ...
- python 类 实例_Python类的实例详解
类(class)是一个用户自定义类型,开发者可以将其实例化以获得实例(instance),实例表示这种类型的对象.在Python中,类就是对象,开发者可以像对其他对象那样处理函数,可以在调用函数时传递 ...
- python的基本原理_python基础1(理论基础)
1.python是什么语言 2.python的发展史 3.python2与python3的区别 4.python的语言类型 5.python的优缺点 6.IDLE是什么 7.变量是什么 一.pytho ...
最新文章
- VTK Example代码编译运行
- 浅谈jsp的7个动作
- java实现zip的压缩和解压(支持中文文件名)
- Maven pom.xml 全配置(二)不常用配置
- java 自定义validate_Golang-03 自定义validator,实现java注解功能-Go语言中文社区
- Beam Search还能更快?结合优先队列的最佳优先化Beam Search
- 岗位推荐 | 微软AI Research Group招聘自然语言处理AI算法研究实习生
- Angular父子组件通过服务传参
- csgo怎么控制电脑玩家_电脑远程控制怎么弄
- ArcGIS实验教程——实验二十七:时态数据可视化----以飓风路径为例
- Grafana : 前端页面 通过API Key免登录访问Grafana
- 双向循环链表:鸿蒙轻内核中数据的“驿站”
- Kubernetes 配置私有镜像仓库时,没有权限访问的问题
- 记录甘肃机顶盒MG101_U2破解之路的辛酸历程
- html单元格下拉菜单怎么做,Excel 2013如何制作下拉菜单?(excel下拉菜单怎么做?)...
- gwt java_GWT中的Java 8支持
- LateX正文与首页页眉线分别为单双线的设置方法
- 击中击不中变换的作用理解
- 名帖311 成亲王 行书《杜甫秋兴诗》
- 百度云盘搜索引擎微信公证号_全L导演 H265 1080P 双语版@微信公众号edy521
热门文章
- 用 WebClient 轻松实现文件下载上传、网页抓取
- 数据结构与算法——链表题目实现
- 2017年网易校招题 买苹果
- 对10亿个数据去重java_20 亿个数字在 4G 内存中如何去重排序:快来试一试 BitMap...
- springboot 引入jdbc驱动_SpringBoot+MyBatis+Druid整合demo
- 牛客网数据开发题库_牛客网SQL题库NO.32~40
- c++ qt获取电脑的内存_Qt官方示例-TCP客户端/服务器示例
- case when 多条件_3年前的设计如今被iPhone强推 PITAKA磁吸生态设计的前瞻性到底有多可怕?...
- word交叉引用插入文献后更新域之后编号未更新
- 冈萨雷斯《数字图像处理》读书笔记(九)——形态学图像处理