python定义类self用法实例解析
作者:xiaobaizzZ 发布时间:2022-01-08 14:11:01
这篇文章主要介绍了python定义类self用法实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
在定义类的过程中,无论是显式的创建类的构造方法,还是向类中添加实例方法,都要将self参数作为方法的第一个参数。
class Person:
def __init__(self):
print("正在执行构造方法")
def study(self, name):
print(name, "正在学python")
python类方法中的self参数就相当于C++中的this指针。
同一个类可以产生多个对象,当某个对象调用类方法时,该对象会把自身的引用作为第一个参数自动传给该方法,换句话说,python会自动绑定类方法的第一个参数指向调用该方法的对象。
如此,python解释器就能知道到底要操作哪个对象的方法了。
程序在调用实例方法和构造方法时,不需要手动为第一个参数传值。
class Person:
def __init__(self):
print("正在执行构造方法")
def study(self):
print(self, "正在学python")
xiaobai = Person()
xiaobai.study()
mary = Person()
mary.study()
#执行结果
#study()中的self代表该方法的调用者,即谁调用该方法,那么self就代表谁。
正在执行构造方法
<__main__.Person object at 0x0000013B6A24BA58> 正在学python
正在执行构造方法
<__main__.Person object at 0x0000013B6A24BC88> 正在学python
对于构造函数中的self参数,其代表的是当前正在初始化的类对象。
class Person:
name = "xiaobai"
def __init__(self, name):
self.name = name
mary = Person("mary")
print(mary.name)
lisa = Person("lisa")
print(lisa.name)
#执行结果
mary
lisa
总之,无论是类中的构造函数还是普通的类方法,实际调用它们的是谁,则self就代表谁。
来源:https://www.cnblogs.com/xiaobaizzz/p/12218350.html


猜你喜欢
- 前言需要从数据库检索某些符合要求的数据,我们很容易写出 Select A B C FROM T WHERE ID = XX 这样
- 本文实例讲述了php查询mysql数据库并将结果保存到数组的方法。分享给大家供大家参考。具体分析如下:这里主要用到了mysql_fetch_
- 由于公司经常需要异地办公,在调试的时候需要用到内网环境,因此手动写了个代理转发服务器給兄弟们用:socks5proxy。选型上,语言上就选择
- 组件:"Adodb.Stream" 有下列方法: Canc
- (下面的代码原来我想用折叠的代码的,但是在google里面老是添加不了折叠的代码,所以就整屏的贴出来了,望大家不要见外。) 朋友的比较好的存
- 在写脚本的过程中,除了发送form表单参数之外,我们还会发送json格式的参数。那么碰见json格式要怎么发送呢,这篇我们来解决这个问题。直
- vue使用swiper5官网使用方法 详情 :Swiper使用方法 - Swiper中文网 在vue中使用 首先 npm inst
- 下面是一个简单的Family Tree 示例: DECLARE @TT TABLE (ID int,Relation varchar(25)
- 处理数据时,经常需要对索引进行处理,那么可以通过set_index和reset_index来进行处理官方文档DataFrame.set_in
- 初学python,写一个小程序练习一下。主要功能就是增删改查的一些功能。主要用到的技术:字典的使用,pickle的使用,io文件操作。代码如
- ImageField的使用笔记今天完善作业写的订单系统,主要是给每一个菜品增加图片,看起来美观一些,但是没想到这个小小的需求花了我一天时间,
- 简介 SQL Server OS是在Windows之上,用于服务SQL Server的一个
- 这篇文章主要介绍了pandas和spark dataframe互相转换实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定
- 新建项目时,选择新建虚拟环境项目打开后,启动终端,却经常发现,并没有开启虚拟环境,导致一些包都被安装到全局环境中。一种解决办法是手动开启虚拟
- 本文实例讲述了Python中pandas模块DataFrame创建方法。分享给大家供大家参考,具体如下:DataFrame创建1. 通过列表
- 本文实例讲述了JavaScript实现点击按钮切换网页背景色的方法。分享给大家供大家参考,具体如下:这里演示JavaScript用按钮随意变
- 1. 概述动态规划算法应用非常之广泛。对于算法学习者而言,不跨过动态规划这道门,不算真正了解算法。初接触动态规划者,理解其思想精髓会存在一定
- 1、此api已经关闭https://api.map.baidu.com/highacciploc/v1?qcip=220.181
- LEN()函数获取字符串的长度。LEN( <字符> )--返回整型SUBSTRING()函数截取字符内指定位置、指定内容的字符。
- 我们有时候希望回车键敲在文本框(input element)里来提交表单(form),但有时候又不希望如此。比如搜索行为,希望输入完关键词之