python中对_init_的理解及实例解析


Posted in Python onOctober 11, 2019

一、self的位置是出现在哪里?

首先,self是在类的方法中的,在调用此方法时,不用给self赋值,Python会自动给他赋值,而且这个值就是类的实例--对象本身。也可以将self换成别的叫法例如seef,但不建议,因为大家习惯也默认了写成self。

二、self的值是什么?

self的值是Python会自动赋值的,而且值是对象本身。举例说明:类Dog,他的实例是d,那么,d调用类的方法jian(arge1,arge2)的时候,Python会自动转为Dog.jian(d,arge1,arge2)。self的值是Dog的实例d

由于类可以起到模板的作用,因此,可以在创建实例的时候,把一些我们认为必须绑定的属性强制填写进去。以学生类为例,通过定义一个特殊的__init__方法,在创建实例的时候,就把name,score等属性绑上去:

python中对_init_的理解及实例解析

注意:特殊方法“init”前后分别有两个下划线!!!

注意到__init__方法的第一个参数永远是self,表示创建的实例本身,因此,在__init__方法内部,就可以把各种属性绑定到self,因为self就指向创建的实例本身。

有了__init__方法,在创建实例的时候,就不能传入空的参数了,必须传入与__init__方法匹配的参数,但self不需要传,Python解释器自己会把实例变量传进去:

python中对_init_的理解及实例解析

和普通的函数相比,在类中定义的函数只有一点不同,就是第一个参数永远是实例变量self,并且,调用时,不用传递该参数。除此之外,类的方法和普通函数没有什么区别,所以,你仍然可以用默认参数、可变参数、关键字参数和命名关键字参数。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用 Python 获取 Linux 系统信息的代码
Jul 13 Python
Python编程中归并排序算法的实现步骤详解
May 04 Python
Python3实现并发检验代理池地址的方法
Sep 18 Python
python用户管理系统
Mar 13 Python
python实现简单淘宝秒杀功能
May 03 Python
python实现任意位置文件分割的实例
Dec 14 Python
python3+PyQt5 数据库编程--增删改实例
Jun 17 Python
python实现雪花飘落效果实例讲解
Jun 18 Python
解决django model修改添加字段报错的问题
Nov 18 Python
Python新手学习装饰器
Jun 04 Python
5道关于python基础 while循环练习题
Nov 27 Python
Python调用腾讯API实现人脸身份证比对功能
Apr 04 Python
pandas数据处理进阶详解
Oct 11 #Python
结合OpenCV与TensorFlow进行人脸识别的实现
Oct 10 #Python
树莓派安装OpenCV3完整过程的实现
Oct 10 #Python
树莓派极简安装OpenCv的方法步骤
Oct 10 #Python
python 利用jinja2模板生成html代码实例
Oct 10 #Python
pandas将多个dataframe以多个sheet的形式保存到一个excel文件中
Oct 10 #Python
利用pandas合并多个excel的方法示例
Oct 10 #Python
You might like
一个从别的网站抓取信息的例子(域名查询)
2006/10/09 PHP
PHP获取当前url的具体方法全面解析
2013/11/26 PHP
Codeigniter检测表单post数据的方法
2015/03/21 PHP
Laravel 自动转换长整型雪花 ID 为字符串的实现
2020/10/27 PHP
仿猪八戒网左下角的文字滚动效果
2011/10/28 Javascript
CSS+JS实现点击文字弹出定时自动关闭DIV层菜单的方法
2015/05/12 Javascript
详解JavaScript数组的操作大全
2015/10/19 Javascript
js将json格式的对象拼接成复杂的url参数方法
2016/05/25 Javascript
JS对象的深度克隆方法示例
2017/03/16 Javascript
详解Angular 4.x 动态创建组件
2017/04/25 Javascript
jQuery遍历节点方法汇总(推荐)
2017/05/13 jQuery
利用Jasmine对Angular进行单元测试的方法详解
2017/06/12 Javascript
利用hasOwnProperty给数组去重的面试题分享
2018/11/05 Javascript
JavaScript偏函数与柯里化实例详解
2019/03/27 Javascript
通过js示例讲解时间复杂度与空间复杂度
2019/08/06 Javascript
python爬虫实战之最简单的网页爬虫教程
2017/08/13 Python
Python中Threading用法详解
2017/12/27 Python
Python实现迭代时使用索引的方法示例
2018/06/05 Python
对python打乱数据集中X,y标签对的方法详解
2018/12/14 Python
python多线程下信号处理程序示例
2019/05/31 Python
Python用字典构建多级菜单功能
2019/07/11 Python
用Python解数独的方法示例
2019/10/24 Python
Django ModelForm组件原理及用法详解
2020/10/12 Python
6种非常炫酷的CSS3按钮边框动画特效
2016/03/16 HTML / CSS
CSS3制作彩色进度条样式的代码示例分享
2016/06/23 HTML / CSS
Html5新特性用canvas标签画多条直线附效果截图
2014/06/30 HTML / CSS
Canvas 像素处理之改变透明度的实现代码
2019/01/08 HTML / CSS
开学寄语大全
2014/04/08 职场文书
2014年招商引资工作总结
2014/11/22 职场文书
女方离婚起诉书
2015/05/18 职场文书
告知书格式
2015/07/01 职场文书
2016新年感言
2015/08/03 职场文书
小学生安全教育心得体会
2016/01/15 职场文书
《思路决定出路》读后感3篇
2019/12/11 职场文书
详解php中流行的rpc框架
2021/05/29 PHP
详解PyTorch模型保存与加载
2022/04/28 Python