当前位置: 首页 > news >正文

Python类和对象一(十)

 

封装: 

在创建对象之前,通过类将相关的属性和方法打包到一起,然后通过类来生成响应的对象 

定义类:

创建对象:

方法里面有个参数self:new的对象

当我们调用类里面方法的时候,py是怎么知道是哪一个对象在调用呢,就是通过self传递的信息  

类中的每一个方法,默认的第一个参数都是self

继承:

判断对象是否属于某个类:

检测某个类是否为某个类的子类:

多重继承:

对象访问属性和方法,会优先去第一个类中找,第一个找不到了才去第二个类中找 

组合:

self就是实例对象本身,self起到的作用就是绑定,实例对象跟类的方法进行绑定,类的实例对象可以有很多,实例对象共享类里面的方法

self绑定: 

当调用实例c.get_self的时候实际是调用类c的get_self方法,并将实例对象作为参数传递进去,进而实现绑定

在实例中类的方法是共享的,属性是自己的

对象内省: 

py是支持内省的语言,对象在运行的时候拥有自我观察能力,我们想要知道对象有那些属性,可以通过_ _dic_ _ 内省         

通过类里面的方法设置类的属性:

在 class C 中定义的 x = 100 属于类属性。类属性是定义在类中,且不属于任何一个具体实例特有的属性,它被类的所有实例共享。当你创建实例 c = C() 后,c 可以访问到类属性 x ,这是因为当实例去访问一个属性时,如果自身不存在该属性,就会向上到类中查找

实例属性是在实例化对象后,通过特定方式为每个实例单独创建的属性。在 set_x 方法中,x = v 这种写法只是在方法内部创建了一个局部变量 x ,并没有将其与实例 c 关联起来成为实例属性。若要为实例 c 创建名为 x 的实例属性,在 set_x 方法中应写成 self.x = v ,这里的 self 代表实例本身,这样赋值后,实例 c 就有了自己独立的实例属性 x 。

当修改C类属性x值后,对象c的值也变了,因为通过类生成的实力对象,都共享的这个属性,一旦修改它,由他创建对象也改变了

定义最小的类:

可以把它当做字典类使用:

字典:

最小类 

一般建议通过类 生成的实力来模拟字典:

相关文章:

  • STM32 HAL 水位传感器驱动程序
  • MySQL -数据类型
  • leetcode0078. 子集-medium
  • (undone) 吴恩达版提示词工程 2. 指南
  • Sentinel源码—6.熔断降级和数据统计的实现一
  • 【kubernetes】pod资源配额
  • 5G网络切片:精准分配资源,提升网络效率的关键技术
  • 基于 LWE 的格密码python实战
  • (done) 吴恩达版提示词工程 1. 引言 (Base LLM 和 Instruction Tuned LLM)
  • visual studio无法跳转到函数定义、变量定义、跳转函数位置不准问题解决
  • Java链表反转方法详解
  • 注意力机制(np计算示例)单头和多头
  • 信息系统项目管理工程师备考计算类真题讲解五
  • 用python脚本怎么实现:把一个文件夹里面.png文件没有固定名称,复制到另外一个文件夹按顺序命名?
  • 基于Django的AI客服租车分析系统
  • Linux 常用命令 -pkill【通过进程名或其他属性来发送信号给一个或多个进程】
  • 2025.4.14-2025.4.20学习周报
  • 宝塔面板部署 Dify-latest 最新版本
  • QML 字符串格式化
  • Matplotlib的应用
  • 中宣部等十部门联合印发《新时代职业道德建设实施纲要》
  • 花卉引流+商场促销,上海浦东用“花经济”带动“消费热”
  • 第六季了,姐姐们还能掀起怎样的风浪
  • 北京一季度GDP为12159.9亿元,同比增长5.5%
  • 42岁北京大学科学技术与医学史系副教授陈昊逝世
  • 重庆网红景点“莲花茶摊”被市民投诉,官方:采纳意见,整改!