笔记----python的self

本文深入探讨了Python中self的概念,解释了其在类实例化和方法调用中的作用,通过具体代码示例展示了如何使用self来访问和操作类对象的属性。

自我理解:
我认为 self 是你对一个类进行实例化后,从而产生的类对象。它并不是代表的类本身,而是实例化后的类对象!类本身的属性他是没有值的,但是,类对象的属性是有值的,这个值就是你进行类实例化时传入的实参。所以你可以用self调用你在类中写的函数和属性。

代码实例:

class Person:
    # def __init__(self):
    #     print('这是相当于无参构造')
    def __init__(self,name,age):  #构造方法,默认加载,不需主动调用
        print('这相当于有参构造')
        self.name = name   #等号后面的参数(name)是方法的形参传入的值
        self.age = age
    def showMasage(self):
        print(self.name)
        print(self.age)

p1 = Person('tom',18)  #是相当于实例化了一个Person类,产生了一个单独(内存地址独立)的Person类对象,然后将实参传入对这个类对象进行初始化
p2 = Person('marry','15')

p1.showMasage()
p2.showMasage()

解释: 上面是我写的一个 Person 类,然后其中的__init__方法是python语言中的构造方法,第一个形参就是self,代表当前类实例化后的类对象,后面两个是我定义的两个参数,需要进行传参进行赋值,传入的值会在类实例化时对这个类对象的属性初始化。比如:我在下方实例化Person类给了p1,参数是“tom”和18,p2亦如此;所以可以说p1和p2相当于实例化后的类对象,下面我调用了showMasage()方法打印值。下面看一下输出:
在这里插入图片描述

图片中可以看出类的__init__方法分别被加载了一次,下方的showMasage()方法各自打印出了由各自self中的属性。
所以我认为 self 是你对一个类进行实例化后,从而产生的类对象。
有迷糊的地方请见谅,谢谢!

Python是一门强大且易学的编程语言,其语法简洁明了,非常适合初学者入门。以下是一些Python复习笔记的概要: 1. **基本语法**: - 变量:不需要声明数据类型,直接赋值即可,如 `x = 5` 或 `name = "Alice"`。 - 注释:单行注释用 `#`,多行注释使用三个引号 `"""..."""` 或 `'``...'```。 2. **数据类型**: - 整数、浮点数、字符串(`str`)、布尔值 (`True` 和 `False`)、列表 (`list`,如 `[1, 2, 'three']`)、元组 (`tuple`, 类似列表但不可变) 和字典 (`dict`, 键值对形式 `{key: value}`)。 3. **控制结构**: - 条件语句(`if`、`elif`、`else`)、循环 (`for` 循环遍历列表,`while` 判断条件执行)。 - `break` 和 `continue` 控制流程,`pass` 是空操作。 4. **函数**: - 函数定义使用 `def` 关键词,可以有返回值 (`return`)。 - 参数传递:位置参数、关键字参数以及默认参数和可变长度参数 (`*args` 和 `**kwargs`). 5. **模块和包**: - Python 中通过 `import` 导入模块,如 `import math`,包通常放在文件夹中,导入时上路径,如 `from package import module`. 6. **面向对象编程**: - 使用 `class` 定义类,`__init__` 是构造函数,`self` 指向类实例本身。 - 继承、封装和多态是 OOP 的核心特性。 7. **异常处理**: - 使用 `try-except` 块捕获并处理可能出现的错误。 8. **标准库和第三方库**: - Python 标准库功能丰富,如 `os`、`datetime` 等;使用 pip 安装第三方库,如 `requests`、`numpy`。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值