一、概述

之前我们说关于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之类的实例化过程剖析相关推荐

  1. python类介绍_Python基础介绍 | Class类

    自从改用Python做数据挖掘以来,我就很少用面向对象的内容了,那啥是面向对象呢? 可以这么理解,如果我们能把代码组合成一个一个可以重复使用的类别,那么这能使程序的可复用性更高,以后只要用这个类别的东 ...

  2. python 类 字典_python基础类型—字典

    字典 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必 ...

  3. Python学习教程(Python学习路线_Python基础学习教程_Python视频教程):初学者新手怎样快速入门Python

    Python学习教程(Python学习路线_Python基础学习教程_Python视频教程):初学者新手怎样快速入门Python? 人生苦短,我用Python!!!短短几个字,现在在各大学习类平台随处 ...

  4. python describe函数_Python基础知识点梳理2,推荐收藏

    接着昨天的基础知识点继续梳理,昨天的 Python基础知识梳理1 8.函数 1.定义函数: 使用关键字def来告诉python你要定义一个函数 接着指出函数名:如下面函数名是-greet_user ( ...

  5. python系列教程_python基础学习系列教程2-进阶之路中绕不开的知识点。

    本文是在上一篇的基础上编写的,若要查看见:雨滴测试:python基础系列教程1-可能是你见过的最通俗易懂的教程​zhuanlan.zhihu.com 五. python函数 所谓的函数,就是具有特定功 ...

  6. cpython python 区别面试_python基础教程之千万不要错过这几道Python面试题

    第1题: python下多线程的限制以及多进程中传递参数的方式? python多线程有个全局解释器锁(global interpreter lock),简称GIL,这个GIL并不是python的特性, ...

  7. python组合和继承_Python基础系列讲解——继承派生和组合的概念剖析

    Python作为一门面向对象的语言,它的面向对象体系中主要存在这么两种关系,一个是"类"和"实例"的关系,另一个是"父类"和"子类 ...

  8. python 类 实例_Python类的实例详解

    类(class)是一个用户自定义类型,开发者可以将其实例化以获得实例(instance),实例表示这种类型的对象.在Python中,类就是对象,开发者可以像对其他对象那样处理函数,可以在调用函数时传递 ...

  9. python的基本原理_python基础1(理论基础)

    1.python是什么语言 2.python的发展史 3.python2与python3的区别 4.python的语言类型 5.python的优缺点 6.IDLE是什么 7.变量是什么 一.pytho ...

最新文章

  1. VTK Example代码编译运行
  2. 浅谈jsp的7个动作
  3. java实现zip的压缩和解压(支持中文文件名)
  4. Maven pom.xml 全配置(二)不常用配置
  5. java 自定义validate_Golang-03 自定义validator,实现java注解功能-Go语言中文社区
  6. Beam Search还能更快?结合优先队列的最佳优先化Beam Search
  7. 岗位推荐 | 微软AI Research Group招聘自然语言处理AI算法研究实习生
  8. Angular父子组件通过服务传参
  9. csgo怎么控制电脑玩家_电脑远程控制怎么弄
  10. ArcGIS实验教程——实验二十七:时态数据可视化----以飓风路径为例
  11. Grafana : 前端页面 通过API Key免登录访问Grafana
  12. 双向循环链表:鸿蒙轻内核中数据的“驿站”
  13. Kubernetes 配置私有镜像仓库时,没有权限访问的问题
  14. 记录甘肃机顶盒MG101_U2破解之路的辛酸历程
  15. html单元格下拉菜单怎么做,Excel 2013如何制作下拉菜单?(excel下拉菜单怎么做?)...
  16. gwt java_GWT中的Java 8支持
  17. LateX正文与首页页眉线分别为单双线的设置方法
  18. 击中击不中变换的作用理解
  19. 名帖311 成亲王 行书《杜甫秋兴诗》
  20. 百度云盘搜索引擎微信公证号_全L导演 H265 1080P 双语版@微信公众号edy521

热门文章

  1. 用 WebClient 轻松实现文件下载上传、网页抓取
  2. 数据结构与算法——链表题目实现
  3. 2017年网易校招题 买苹果
  4. 对10亿个数据去重java_20 亿个数字在 4G 内存中如何去重排序:快来试一试 BitMap...
  5. springboot 引入jdbc驱动_SpringBoot+MyBatis+Druid整合demo
  6. 牛客网数据开发题库_牛客网SQL题库NO.32~40
  7. c++ qt获取电脑的内存_Qt官方示例-TCP客户端/服务器示例
  8. case when 多条件_3年前的设计如今被iPhone强推 PITAKA磁吸生态设计的前瞻性到底有多可怕?...
  9. word交叉引用插入文献后更新域之后编号未更新
  10. 冈萨雷斯《数字图像处理》读书笔记(九)——形态学图像处理