Python中类和对象的定义以及self的作用

本文深入探讨了Python中类和对象的概念,解释了为何使用类,对比了类与函数的区别,详细介绍了类的定义和构造函数,以及self关键字在类中的关键作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python中类和对象以及self的作用

1.为什么要使用类
只要定义好类的构造函数,就可以很方便的生成这个类的实例,并且引用数据成员也很方便。
可将类想象成飞机的设计图纸,而对象是某种类型的飞机(具有这种类型飞机的一些属性)。

2.类和函数的区别

  1. 函数实现功能的模块化
  2. 类实现功能和数据的模块化

3.类的定义:

#类名第一个字母要大写
class Round:
     #类的构造函数,用来初始化类,将需要的数据经过初始化传递过来
     #—_init_函数实例化的时候自动执行
      def _init_(self,radius)
      #使用类的属性接收传递过来的数据
      self.radius = radius
      #定义周长的属性,用来存储周长的值
      self.cir = 0.0
      #定义面积的属性,用来存储面积的值
      self.area = 0.0
      def get_cir(self):
          self.cir = 2*3.14*self.radius
      def get_area(self):
          self.area = 3.14*self.radius*self.radius


上面的类已经写好,那么在实例化对象的过程中如何调用类:

#若类是在项目中的另一个round07.py的文件中编写,在其他文件中调用
#需要引用模块
from utils import round07
#实例化一个对象
myround = round07.Round(6.6)
#计算周长
myround.get_cir()

当然也可以让这个类自动执行计算周长和面积,因为_init_函数在实例化的过程中自动执行,增加两条语句:

class Round:
      def _init_(self,radius)
      #使用类的属性接收传递过来的数据
      self.radius = radius
      self.cir = 0.0
      self.area = 0.0
      
      #让类自动执行方法
      self.get_cir()
      self.get_area()
      
      def get_cir(self):
          self.cir = 2*3.14*self.radius
      def get_area(self):
          self.area = 3.14*self.radius*self.radius

这时,在调用,仅需如下指令:

myround = round07.Round(6.6)

4.类中self关键字作用:
类实例化多个对象时,通过self找到自己对象的数据,可以将self认为是一个指针,指向当前对象,self确保每一个对象的数据都是引用自己对象的数据。在当前对象空间去找变量数据。如下图所示:Round类实例化两个对象(my_round 和 obj_round)。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值