python基础——类【类的定义和使用、魔术方法】

2024-04-23 1500阅读

📝前言:

python中的类,自我感觉在某种程度上和C语言的结构体是有共同之处的,如果有兴趣,可以先看看这篇文章:C语言——结构体类型(一),先了解一下C语言中的结构体,对学习python中的类也有一定帮助。

这篇文章主要讲解一下python语法中关于类的基础知识:

1,类的定义和使用

2,魔术方法

🎬个人简介:努力学习ing

📋个人专栏:C语言入门基础以及python入门基础

🎀CSDN主页 愚润求学

🌄每日鸡汤:再坚持一秒钟,机会也许就在下一秒


文章目录

  • 一,类的定义和使用
  • 二,魔术方法
    • 1,__init__
    • 2,__str__
    • 3,__lt__
    • 4,__le__
    • 5,__eq__

      一,类的定义和使用

      在 Python 中,类是对象的蓝图,它定义了对象的属性和方法。类提供了创建对象的方法,对象是类的实例。使用类可以将代码组织为逻辑单元,并使代码更加模块化。

      定义语法:

      class 类名:
      	属性1
      	属性2
      	
      	def 方法(slef,参数1,参数2……):
      	……
      

      下面是一个简单的 Python 类示例:

      class Dog:
          legs = 4  # 类属性
          name = None
      # 类方法
          def bark(self):
              print("汪汪!")
          def sit(self):
              print(f"{self.name}坐下了。")
      dog1 = Dog()  # 创建对象实例
      dog1.name = "小黄"  # 初始化属性
      dog1.sit()  # 调用方法
      

      注意:我们在类内部定义方法的时候参数部分要多加一个self,如:def sit(self):

      在使用类属性的时候,也需要用self,如:self.name

      (但是我们在外部调用方法的时候,则不需要传入这个self参数)

      运行结果:

      python基础——类【类的定义和使用、魔术方法】

      二,魔术方法

      在Python中,魔术方法是一类特殊的方法,它们被预先定义,用于实现某些特定的功能。魔术方法的名字以双下划线(__)开头和结尾。以下是Python中一些常见的魔术方法:

      python基础——类【类的定义和使用、魔术方法】

      (此图片来源于B站黑马程序员)

      下面我将展示使用上述魔术方法的示例:

      1,init

      __init__ 方法是一个特殊的方法,称为类的构造函数或初始化方法。当您创建一个类的实例时,__init__ 方法会自动被调用。

      下面是一个简单的示例,其中我们使用 init 方法初始化一个名为 Person 的类的属性:

      class Person:
          def __init__(self, name, age):
              self.name = name  # 意思是用传入的参数name给属性name赋值
              self.age = age
      # 创建一个 Person 类的实例
      p1 = Person("Alice", 30)
      # 打印创建的实例的属性
      print(p1.name)  # 输出: Alice
      print(p1.age)   # 输出: 30
      

      2,str

      __str__ 方法是一个特殊的方法,用于定义当尝试将对象转换为字符串时应该执行的操作。通常,__str__ 方法返回对象的字符串表示。

      下面是一个简单的示例,其中我们使用 str 方法为 Person 类提供一个自定义的字符串表示:

      class Person:
          def __init__(self, name, age):
              self.name = name
              self.age = age
          def __str__(self):
              return f"{self.name} is {self.age} years old."
      # 创建一个 Person 类的实例
      p1 = Person("Alice", 30)
      # 将对象转换为字符串
      print(str(p1))  # 输出: Alice is 30 years old.
      

      3,lt

      __lt__ 方法是一个特殊的方法,用于定义当两个对象进行比较时应该执行的操作。在比较运算符

      下面是一个简单的示例,其中我们使用 lt 方法定义 Person 类实例之间的比较:

      class Person:
          def __init__(self, name, age):
              self.name = name
              self.age = age
          def __lt__(self, other):
              return self.age  
      

      在本例中,我们根据年龄进行比较,因此当 p1.age 小于 p2.age 时,结果为 True。

      4,le

      __le__ 方法是一个特殊的方法,用于定义当两个对象进行比较时应该执行的操作。在比较运算符

VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]