Python_类对象、实例对象、类属性、实例属性、类方法、实例方法

Python实例属性和实例方法_类对象、类属性、类方法、静态方法 实例属性是从属于实例对象的属性,也称为“实例变量”。他的使用有如下几个要点:实例属性一般在__init__()在本类的其他实例方法中,也是通过self进行访问:self.实例属性名#创建和初始化对象,调用__init__()初始化属性#可以给已有属性赋值,也可以新加属性实例方法是从属于实例对象的方法。方法的调用格式如下:selfselfselfself。 阅读详情

目录

认识类对象、实例对象、类属性、实例属性、类方法、实例方法

类对象实例化过程中的内存分配说明


认识类对象、实例对象、类属性、实例属性、类方法、实例方法

  • 类对象:定义的类就是类对象
  • 实例对象:类对象实例化后就是实例对象
  • 类属性:定义在 __init__ 外部的变量
  • 实例属性:定义在__init__内部的带有self.的变量
  • 类方法:定义在类对象中 且 被@classmethod 装饰的方法就是类方法
  • 实例方法:定义在类对象中,且 未被@classmethod 装饰的方法就是实例方法
class Foo:
    # 【类属性】定义在 __init__ 外部的变量
    cls_attr = "我是类属性"

    def __init__(self):
        # 【实例属性】定义在__init__内部的带有self.的变量。没有self.是局部变量
        self.self_attr = "我是实例属性"

    @classmethod
    def cls_func(cls):
        print("我是类方法")
        print("在类方法内部调用类属性", cls.cls_attr)

    def self_func(self):
        print("我是实例方法")
        print("在实例方法内部调用类属性", self.cls_attr)
        print("在实例方法内部调用实例属性", self.self_attr)


if __name__ == '__main__':
    # 类对象:定义的类就是类对象
    print("类对象", Foo)

    # 实例对象:类对象实例化后就是实例对象
    self_obj = Foo()
    print("实例对象", self_obj)
    print("-" * 30)

    # 类属性:定义在 __init__ 外部的变量
    # 类属性可以被类对象调用,也可以被实例对象调用,调用方式是【对象.类属性】调用
    print("类对象调用类属性", Foo.cls_attr)
    print("实例对象调用类属性", self_obj.cls_attr)
    print("-" * 30)

    # 实例属性:定义在__init__内部的带有self.的变量
    # 实例属性只能实例对象调用
    print("实例对象调用实例属性", self_obj.self_attr)
    print("-" * 30)

    # 类方法:定义在类对象中 且 被@classmethod 装饰的方法就是类方法
    # 类方法可以被类对象调用,也可以被实例对象调用,调用方式是【对象.类属性】调用
    print("类对象调用类方法", Foo.cls_func())
    print("实例对象调用类方法", self_obj.cls_func())
    print("-" * 30)

    # 实例方法:定义在类对象中,且 未被@classmethod 装饰的方法就是实例方法
    # 实例方法只能被实例对象调用
    print("实例对象调用类方法", self_obj.self_func())

类对象实例化过程中的内存分配说明

当执行python脚本时,Python解析到类对象时,会给类对象在内存中分配一块区域,在这处内存中存储类对象的所有属性和方法。

当创建实例时,每创建一个实例就会将实例属性和方法全部复制一份,并存储到一块新的内存区域。

类属性和类方法不会被复制,但是我们可以通过实例对象调用它们,这是因为每个创建的实例对象都会添加__class__属性,该属性指向类对象,因此能够通过实例对象调用类属性和类方法。

 验证代码

综上所述,从类的维度可以简单理解为

类属性和类方法是共用的(或全局的),不管任何类对象或实例对象修改了类属性或方法中的变量值,所有调用的地方都会受影响。

实例属性和实例方法是私有的(或局部的),某个实例对象修改了实例属性或方法的变量值,只会影响其本身,不会影响其它实例对象。


-事必有法,然后有成- 最后祝大家早日达到测试的天花板!



 以下是我收集到的比较好的学习教程资源,虽然不是什么很值钱的东西,如果你刚好需要,可以评论区,留言【777】直接拿走就好了

机械臂开发必备:KDL库正逆解与动力学实战指南 在机器人算法领域,运动学与动力学计算是机械臂控制、仿真与轨迹规划的核心基础。正运动学描述关节空间到笛卡尔空间的映射,逆运动学则需要求解复杂的非线性方程,工程实现时常面临数值稳定性与调试效率的挑战。KDL(Kinematics and Dynamics Library)作为ROS生态中广泛使用的开源库,提供了统一的模型描述与高效求解器,将正逆解、雅可比矩阵及动力学参数计算封装为简洁接口,大幅降低开发门槛。无论是机械臂的笛卡尔空间轨迹跟踪,还是基于动力学模型的前馈控制,KDL都展现出强大的工程价值。本文从运动学 阅读详情

相关推荐

RealSense D455的标定并运行VINS-FUSION

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

qq_40186909的博客 2万+

Python基础篇(16):类属性和实例属性

1、类属性是指:定义在的内部而且在方法的外部的属性2、类属性的调用方法。

qq_23440467的博客 1426

LD14激光雷达与STM32F103C8T6(标准库)获取雷达360度数据(1)

LD14激光雷达与STM32F103C8T6(标准库)获取雷达360度数据(1)

qq_54206194的博客 3897

详解Python中类属性、 实例属性、 类方法、 静态方法、实例方法以及super()的使用和单例模式

详解Python中类属性、 实例属性、 类方法、 静态方法、实例方法以及super()的使用和单例模式

渊雅 4035

OFDM时频脉冲形状与子载波正交性的理解

从多载波调制的角度来理解子载波间正交,首先要明确OFDM默认的脉冲成型是时域矩形窗,时域上每个子载波 ej2πfnte^{j2πf_nt}ej2πfn​t 都被一个矩形窗脉冲gT(t)g_T(t)gT​(t)成型。其次,OFDM子载波间隔 等于 OFDM符号周期的倒数,这是子载波正交的条件。 ​ 根据时频脉冲形状,可以从时域上理解如左图(注意是矩形脉冲 乘 复指数),从频域上理解如右图(sinc脉冲 卷 频点)。 ​

weixin_43803202的博客 2213

OpenFOAM-v2006重叠网格挖洞问题实战:如何手动修复overset代码中的边缘识别缺陷

本文深入探讨了OpenFOAM-v2006中重叠网格挖洞问题的实战解决方案,重点修复overset代码中的边缘识别缺陷。通过逆向工程解析挖洞决策机制,设计最小侵入式的函数override方案,并建立多级验证体系,有效解决了网格挖洞区域覆盖不全的问题,提升了计算流体动力学模拟的准确性和可靠性。

weixin_29216049的博客 430

Python的类对象、实例对象、类属性、实例属性、类方法、实例方法

类属性和类方法不会被复制,但是我们可以通过实例对象调用它们,这是因为每个创建的实例对象都会添加__class__属性,该属性指向类对象,因此能够通过实例对象调用类属性和类方法。总之,类和实例是面向对象编程的基本概念,类属性和实例属性用于存储数据,类方法和实例方法用于定义类的行为。不同的对象可以有不同的实例属性值,但它们共享相同的类属性和类方法。当执行python脚本时,Python解析到类对象时,会给类对象在内存中分配一块区域,在这处内存中存储类对象的所有属性和方法。它们在类的所有实例之间共享。

chen的博客 3760

FunASR语音识别服务在Win11上的Docker部署避坑指南:模型配置与热词优化

本文详细介绍了在Windows 11系统上通过Docker部署FunASR语音识别服务的完整流程,包括环境准备、模型配置、热词优化及常见问题解决方案。特别针对Win11环境下的特殊配置和性能调优提供了实用指南,帮助开发者高效搭建高性能语音识别服务。

e3f4g5的博客 222

Python中的类属性 vs 实例属性

类属性是与类相关联的属性。它们属于类本身,而不是类的任何特定实例。这意味着无论创建多少个类的实例,它们都会共享相同的类属性。类属性通常位于类的顶部,定义在类的任何方法之外。类属性的一个常见用途是存储与类相关的常量或共享的状态信息。例如,可以在类属性中存储数据库连接信息、默认配置或类的共享状态。实例属性是与类的每个实例相关联的属性。每个类的实例都可以拥有自己的一组实例属性。实例属性通常在类的构造方法(通常是__init__方法)内定义,并使用self关键字来访问。

涛哥聊Python 1199

【推荐100个unity插件】性能极高的逼真爆炸、火焰和烟雾效果——UNI VFX

这是一篇关于Unity中高性能GPU粒子特效插件UNI VFX的使用指南。文章介绍了该插件提供逼真的爆炸、火焰和烟雾效果,支持URP和HDRP渲染管线。主要内容包括:插件安装方法(需预先安装Visual Effect Graph和Shader Graph包)、事件系统使用方法(如create/loop/stop等事件控制)、特效分类(自动结束型和持续型特效)、检视面板配置技巧以及性能优化建议(特别提醒灯光特效对性能的影响较大)。文末还推荐了多个Unity开发相关的专栏内容。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1487

5、癌症数据预处理技术与深度学习在癌症预测中的应用

本文详细介绍了癌症数据预处理技术和深度学习在癌症预测中的应用。针对CT扫描图像、X射线图像、超声图像、基因表达数据和文本数据等不同类型的癌症数据,分别阐述了去噪、插值、配准、归一化等预处理技术的具体方法。同时,分析了深度学习在乳腺癌、白血病和宫颈癌预测中的作用,结合相关影响因素探讨了模型的应用潜力。此外,还总结了深度学习在癌症预测中面临的挑战及未来发展方向,为癌症的早期诊断与精准预测提供了理论支持和技术参考。

alice7model的博客 123

python中类对象、实例对象、类属性、实例属性、实例方法、类方法总结

1、类对象、实例对象、类属性、实例属性定义参见下列代码中的下划线解释 定义部分的参考代码: class People(object): #类对象,一个类只有类对象,本例中为People。 country = 'china' #类属性处于类中但def ()函数外面的变量。 #实例方法,前面不加@classmethod,类中定义的参数为self的函数被调用...

yizhidaganzi的博客 572

SAP ATP可用性检查简介

系统中建立此单时,SAP就会做一个所谓的检查,检查一下我们预先设定的考虑因素,能否满足客户的要求,什么时候可以满足,这就是可用性检查的功能。2、同样的在创建生产订单的时候也有ATP的检查,生产订单是100PC,要求2024-07-01生产完成,系统就会根据配置进行物料的可用性的检查,看物料是否能够满足生产同时能够满足交期。14: 表示相关预留的选项,与10的区别在于,10是一般是表示我们用MB21建立的,而14是表示由于相关预留,即此预留是来自于其他物料,如生产订单所产生的预留。

我小时候很黑的博客 3374

python 中类对象、实例对象、类属性、实例属性、类方法、实例方法、静态方法

啥子都不说,直接上例子来分析,Python环境是python3 class Province(object): #类属性 country = "china" def __init__(self,name): #实例属性 self.name = name def test(self): '''定义一个实例方法,至少有一个self参数''' self.cfunc("chinax") self..

zhangdell的专栏 2059

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

python中类方法可以访问实例属性吗_python中类对象、实例对象、类属性、实例属性、类方法、实例方法、静态方法...

类对象、类属性与实例对象、实例属性的区别在Python中一切皆是对象,类是一个特殊的对象即类对象,描述类的属性称为类属性。类属性在内存中只有一份,在__init__外部定义。通过类创建的对象称为实例对象,描述实例对象的属性称为实例属性。实例属性在各自对象的内存中都保存一份,在__init__方法内部定义。实例方法、类方法、静态方法的区别这三种方法都是保存在类的内存中,调用者不同。实例方法由对象调用...

weixin_39732609的博客 414

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Python-高级:类对象、实例对象、类方法、实例方法、类属性、实例属性、静态方法

参考教程的截图: 示例代码: class Test(): company = 'OTN' # 实例方法 def __init__(self, name, age): self.name = name self.age = age def __str__(self): return "name...

bluebloodye的专栏 289

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Python类对象、实例对象、类属性、实例属性、类方法、实例方法、静态方法、属性方法的区别

此文章为个人学习整理笔记

qq_38380338的博客 3211

Python——面向对象(OOP)封装篇(实例对象、类对象、类方法、实例方法、静态方法、类属性、实例属性)

关于Python封装相关的基本知识

m0_66881249的博客 2133

python的实例属性和静态属性_python中类对象、实例对象、类属性、实例属性、类方法、实例方法、静态方法...

类对象、类属性与实例对象、实例属性的区别在Python中一切皆是对象,类是一个特殊的对象即类对象,描述类的属性称为类属性。类属性在内存中只有一份,在__init__外部定义。通过类创建的对象称为实例对象,描述实例对象的属性称为实例属性。实例属性在各自对象的内存中都保存一份,在__init__方法内部定义。实例方法、类方法、静态方法的区别这三种方法都是保存在类的内存中,调用者不同。实例方法由对象调用...

weixin_39925959的博客 294

类属性、实例属性、类方法、静态方法、类对象、实例对象

类属性 class Example(object): name = 'mod' age = 18 name和age称为类属性 实例属性 class Example1(object): def __init__(self,name, age): self.name = name self.age = age 这里self就是实例化的对象,self.name和self.age就是实...

、moddemod 472

Python 中的类对象和实例对象

概念 类对象: 就是类本身 实例对象: 由类实例化出来的对象 In [1]: class Person(object): ...: def __init__(self): ...: pass ...: In [2]: print(Person) <class '__main__.Person'> In [3]: p1 = Person(...

weixin_43182689的博客 3393

Python中的类属性、实例属性与类方法、静态方法

1、什么是类对象,实例对象 类对象:类名 实例对象:类创建的对象 2、类属性就是类对象所拥有的属性,它被所有类对象的实例对象所共有,在内存中只存在一个副本,这个和C++、Java中类的静态成员变量有点类似。对于公有的类属性,在类外可以通过类对象和实例对象访问 类属性 # 类属性 class people: name="Tom" #公有的类属性 __age=18

zhanggf的博客 4万+

Python 类对象和实例对象访问属性的区别、property属性

类对象、实例对象、类属性、实例属性 下面的一个小demo,定义了一个省份类Province ,即类对象 Province ,开辟了一块内存空间,空间中存放着 类属性 country 和 __init__()方法 。 继续创建了一个实例对象 obj ,又开辟了一块新的内存空间(创建实例化对象时,会首先调用 __new__()方法,开辟空间,然后调用__init__()方法,对刚分配的内存空间...

Au 2129

类对象、实例对象、类方法、实例方法、类属性、实例属性、静态方法、property

类对象、类属性与实例对象、实例属性的区别 在Python中一切皆是对象,类是一个特殊的对象即类对象,描述类的属性称为类属性。类属性在内存中只有一份,在__init__外部定义。 通过类创建的对象称为实例对象,描述实例对象的属性称为实例属性。实例属性在各自对象的内存中都保存一份,在__init__方法内部定义。 class Province(object): # 类属性 country = '中国' def __init__(self, name): # 实例

weixin_42219287的博客 554

python实例方法调用类属性_python 类对象、类属性、类方法和实例对象、实例属性、实例方法的互相调用,重点难点讲解...

调用实例方法的2种方法,共8种场景举例(一)、同类中,调用实例方法,有2种方法,通过类对象调用,通过实例对象调用方法(1)、 通过实例对象,调用实例方法方法(2)、通过类对象,调用实例方法1、类方法只有一个参数self 的情况:学习目的:同类中调用方法(实例方法),该怎么处理。class Cat:def cat_age(self):print('---猫的年龄未知---')c = Cat() #...

weixin_39628180的博客 610

python之类属性和类方法

实例属性是类对象的属性,类属性是类的属性,通过类名不能访问实例属性和实例方法 class Person: a=18 def __init__(self): self.a=28 print(Person.age) # 类属性 print(Person().age) # 实例属性 类方法和静态方法都属于类的方法 class Person: a=28 ...

GrofChen的博客 319
上一篇: Python 利用@property装饰器和property()方法将一个方法变成属性调用
下一篇: Python中类的变量,一个下划线与两个下划线的区别
bug捕手
博客等级 码龄4年 899粉丝 417原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值