我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python里的Self是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python里的Self是什么

这篇文章主要介绍“Python里的Self是什么”,在日常操作中,相信很多人在Python里的Self是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python里的Self是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

大家学Python面向对象的时候,总会遇到一个让人难以理解的存在:self。

这个self到底是谁啊,为什么每个类实例方法都有一个参数self,它到底有什么作用呢?

「先下结论:类实例化后,self即代表着实例(对象)本身。」

想要理解self有个最简单的方法,就是你把self当做「实例(对象)的身份证。」

Python的类不能直接使用,只有通过创建实例(对象)才能发挥它的功能,每个实例(对象)都是独一无二的,它可以调用类的方法、属性。类就像灵魂附体一样,让实例(对象)有了自己(self)的功能。

Python里的Self是什么

初学者会发现,类的方法(构造方法和实例方法)中都会有一个固定参数self,其实这个参数就是代表着实例(对象)本身,就像是一个身份证,实例可以凭着身份证去调用类方法。

Python里的Self是什么

类比人类,人类就是一个Python类,每个个体的人代表着实例(对象),而每个人的身份证代表的Python中self,每个人可以凭借身份证去上大学、坐高铁、住酒店...(方法),而Python中的实例(对象)也可以凭着self去调用类的方法。

Python里的Self是什么

上面是用类比的方法解释了下self的含义,说到底self就是代表着实例本身,「当某个实例(对象)调用类方法时,该对象会把自身的引用作为第一个参数自动传给该方法,而这第一个参数就是self。」

而且self只是约定俗成的写法,你可以用任何其他名称代替self,不会改变代码含义,只不过我们一般不这样做。

为了更好的说明self的作用,我们来举个例子,下面有一个Students类:

class Students:# 构造方法def __init__(self,name):self.name = name# 实例方法def study(self,examination_results):self.examination_results = examination_resultsprint("同学{}的考试分数是{}".format(self.name,self.examination_results))print("该实例对象的地址是{}".format(self))

先来个实例student_a。

studend_a = Students('studend_a')print(studend_a.name)

结果打印出:studend_a。

再来个实例student_b。

studend_b = Students('studend_b')print(studend_b.name)

结果打印出:studend_b。

可以看出,实例(对象)不一样,打印出的结果也不一样,当类被实例化后,self.name其实就等于实例(对象).name。

还是以刚刚的代码为例,我们再来调用里面的实例方法,里面会打印出self,就能看得更加明显了。

实例student_a:

studend_a = Students('studend_a')print(studend_a.study(80))

输出结果:

同学studend_a的考试分数是80 该实例对象的地址是<「main」.students object="" at="" 0x00000129eb0f6a90="">。

实例student_b:

studend_b = Students('studend_b')print(studend_b.study(80))

输出结果:

同学studend_b的考试分数是80 该实例对象的地址是<「main」.students object="" at="" 0x00000129eb0f6b38="">。

大家能清楚看到两个实例打印出的self是不一样的,因为self代表着实例(对象)本身。

以实例student_b来说,打印self出现下面对象信息。

<__main__.students object="" at="" 0x00000129eb0f6b38="">。

如果再打印 student_b,会出现同样的结果。

print(student_b)

输出:

<__main__.students object="" at="" 0x00000129eb0f6b00="">。

这个时候是不是就清楚了,类实例化后,self即代表着实例(对象)本身。

到此,关于“Python里的Self是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python里的Self是什么

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python里的Self是什么

这篇文章主要介绍“Python里的Self是什么”,在日常操作中,相信很多人在Python里的Self是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python里的Self是什么”的疑惑有所帮助!接下来
2023-07-06

python中self的原理是什么

本篇文章为大家展示了python中self的原理是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。python的数据类型有哪些?python的数据类型:1. 数字类型,包括int(整型)、long
2023-06-14

Python类中self的含义是什么

在Python中,`self`是一个惯用的参数名,用于表示对象自身。它在类的方法中作为第一个参数传递,用于访问该对象的属性和方法。当定义一个类的方法时,需要使用`self`参数来引用对象的实例变量和方法。通过使用`self`参数,我们可以在
2023-10-12

php中self的意思是什么

在PHP中,self的意思是“自己、本身”;self关键字用于指向类本身以及类实例,self关键字不是指向任何已经实例化的对象,而是用来指向类中的静态变量。
2014-10-25

php中self的意思是什么

Self在PHP中的含义Self是PHP中的一个关键字,用于引用当前类的静态成员和方法。它可以访问类的属性和行为,而无需显式实例化该类。用法访问静态属性:self::$static_property调用静态方法:self::static_method()访问父类的静态成员:self::$parent_static_property访问类常量:self::CONSTANT区别Self用于静态成员,而$this用于实例成员。最佳实践仅在需要时使用Self。使用Self可以提高代码的可读性和可维护性。避免在静态
php中self的意思是什么
2024-04-26

python类中为什么要self?

在python中创建类时必须有一个self参数,eg: >>> class miss: ...              def mi(self):...             print "i like python" ...  >>
2023-01-31

继承中self代表的是什么

继承中self代表的是什么?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
2023-06-06

python实例方法中self有什么用

今天就跟大家聊聊有关python实例方法中self有什么用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、说明无论是创建类的构造方法还是实例方法,最少要包含一个参数self。通过实
2023-06-15

pyhton数据挖掘self原理是什么

本篇内容主要讲解“pyhton数据挖掘self原理是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“pyhton数据挖掘self原理是什么”吧!1. 什么是class,什么是instance,
2023-06-25

python里range的作用是什么

在Python中,range()函数用于生成一个整数序列。它通常用在for循环中,用于迭代指定范围内的整数。range()函数可以接受一个、两个或三个参数:- 当只有一个参数时,生成的序列包含从0开始到该参数减1的整数。- 当有两个参数时,
2023-08-25

python里的str是什么意思

在Python中,str是一个内置的数据类型,表示字符串。字符串是由字符组成的序列,用于表示文本数据。可以使用单引号或双引号将字符串括起来。例如:```name = 'Alice'message = "Hello, World!"```字符
2023-08-25

Python的isinstance在Golang里面是什么意思

本篇内容介绍了“Python的isinstance在Golang里面是什么意思”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!我们知道,在Py
2023-06-15

c++里的?是什么

c++ 中的条件运算符 (? :) 是一个三元运算符,根据一个条件执行不同的操作。语法为:condition ? true_expression : false_expression,其中 condition 为布尔表达式,true_exp
c++里的?是什么
2024-04-22

python指的是什么

这篇文章将为大家详细讲解有关python指的是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、python介绍python是编程语言,与平时说的c语言、Java、php等语言相似。python是面向
2023-06-14

Python里的17个超赞操作分别是什么

今天就跟大家聊聊有关Python里的17个超赞操作分别是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。人生苦短,我选Python”。那么,你真的掌握了Python吗?1. 交换变
2023-06-02

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录