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

学习小心意——python的构造方法和析构方法

构造方法和析构方法分别用于初始化对象的属性释放类占有的资源

构造方法_init_()

语法格式如下:

class 类名:
    def __init__(self, 参数1, 参数2, ...):
        # 初始化代码
        self.属性1 = 参数1
        self.属性2 = 参数2
        # ...

示例代码如下

class Student:
    def __init__(self):
        self.name = "小明"
        self.age = 20
    def speak(self):
        print("我叫%s,今年%s岁。" % (self.name, self.age))

s = Student()  # 创建一个Student类的实例对象s
s.speak()  # 调用s的speak方法

输出结果如下

关于构造方法的玩法有很多,这里只是简单引用一下

析构方法_del_()

语法格式如下

class 类名:
    def __init__(self, 参数1, 参数2, ...):
        # 初始化代码
        self.资源 = 初始化资源
        # ...

    def __del__(self):
        # 清理代码
        print("对象正在被销毁")
        # 释放资源,例如关闭文件、断开网络连接等

示例代码如下

class Student:
    def __init__(self, name, age, grade):
        self.name = name
        self.age = age

    def __del__(self):
        print("析构方法在运行")  # 修正了打印语句的错别字,并确保了正确的缩进

# 创建Student对象
s1 = Student("Alice", 18, 3)
s2 = Student("Bob", 19, 4)

# 删除Student对象,会触发__del__方法
del s1
del s2

输出结果如下

小小分享,到此一游。我是好运🎁💖🎁

相关文章:

  • 【图像处理与机器视觉】频率域滤波
  • YOLOv8+PyQt5海洋船只检测(可以重新训练,yolov8模型,从图像、视频和摄像头三种路径识别检测)
  • ESP使用巴法云远程OTA(VScode + Platform io)
  • Swoole 协程调度机制
  • 深度学习知识与心得
  • MFC工控项目实例之一主菜单制作
  • SEW交频器 MDX61801110-5A3-4-0T可议价
  • 手把手教你从0到1开发浏览器插件
  • Curator Framework如何写单元测试
  • Linux shell编程学习笔记56:date命令——显示或设置系统时间与日期
  • 力扣linkedlist
  • Go-知识并发控制Context
  • C语言 链表经典OJ题
  • 策略模式结合Spring使用
  • 学生信息管理系统C++
  • ldap协议(常用于统一身份认证)与dict协议(在线词典)
  • 深入解析JVM堆内存管理:对象流转与优化策略全揭秘
  • Day40 代码随想录打卡|二叉树篇---完全二叉树的节点个数
  • 【linux】(2)文件内容排序sort
  • 【射击game】
  • 正荣地产:董事会主席、行政总裁辞任,拟投入更多精力推动境内债重组等工作
  • OpenAI任命了一位新CEO
  • 【社论】以法治力量促进民企长远健康发展
  • 牛市早报|央行宣布降准降息,公募基金改革最新方案落地
  • 视频丨习近平主席出席俄方在机场举行的迎宾仪式
  • 李云泽:支持小微企业、民企融资一揽子政策将从增供给、降成本、提效率、优环境4个方面发力