【Python零基础入门篇 · 15】:析构函数、封装和私有权限、私有属性和私有方法

简介: 【Python零基础入门篇 · 15】:析构函数、封装和私有权限、私有属性和私有方法

一、析构函数


__del__方法  


析构方法__del__是对象在被垃圾回收的时候起作用的一个方法,它的执行一般也就意味着对象不能够继续引用, 回收内存。


6be524d840ce4d51adba608db5b72ea7.png

在删除对象时解释器会默认使用del方法:

31bdcc9386b04340bd4603e4de87fddf.png




二、封装和私有权限



1、封装


  • 封装:类——麻袋,本身就是一种封装


  • 封装的方法:将属性和方法装到一个抽象的类中,外界使用类创造对象,让对象调用方法


  • 封装的作用:将复杂的信息、流程给包起来,内部处理,让使用者只需要通过简单的操作步骤就能实现。



2、私有权限


私有权限:在属性名和方法名前加两个下划线__


类中定义私有,只有类的内部能使用,外部无法访问。


访问不了私有属性:age,会报错 。私有属性,外部不能访问


08808d31c4144ef99f0fdb4f2bec8cd1.png


如何访问私有属性?


在实例方法内,通过:类名.__私有属性名(在类的内部访问)

d12983f80ea5483aaa8bb33273d828cf.png



三、私有属性和私有方法


1、私有属性:


_xx:单下划线揩油,私有属性或方法,类对象和子类可以访问


__xx:双下划线开头,私有权限,无法再外部直接访问


b0f33376208a4c2a80713cc6a722cdf3.png


2、私有方法:

 

在实例方法中调用私有方法


8f274bbcc9964292a2fc063a4f270bcb.png

580d6135d810419994ba6fc380298b0b.png


相关文章
|
1月前
|
测试技术 API Python
【10月更文挑战第1天】python知识点100篇系列(13)-几种方法让你的电脑一直在工作
【10月更文挑战第1天】 本文介绍了如何通过Python自动操作鼠标或键盘使电脑保持活跃状态,避免自动息屏。提供了三种方法:1) 使用PyAutoGUI,通过安装pip工具并执行`pip install pyautogui`安装,利用`moveRel()`方法定时移动鼠标;2) 使用Pymouse,通过`pip install pyuserinput`安装,采用`move()`方法移动鼠标绝对位置;3) 使用PyKeyboard,同样需安装pyuserinput,模拟键盘操作。文中推荐使用PyAutoGUI,因其功能丰富且文档详尽。
WK
|
28天前
|
Python
Python中format_map()方法
在Python中,`format_map()`方法用于使用字典格式化字符串。它接受一个字典作为参数,用字典中的键值对替换字符串中的占位符。此方法适用于从字典动态获取值的场景,尤其在处理大量替换值时更为清晰和方便。
WK
70 36
|
1月前
|
机器学习/深度学习 数据采集 数据挖掘
11种经典时间序列预测方法:理论、Python实现与应用
本文将总结11种经典的时间序列预测方法,并提供它们在Python中的实现示例。
67 2
11种经典时间序列预测方法:理论、Python实现与应用
|
1月前
|
开发者 Python
Python中的魔法方法与运算符重载
在Python的奇妙世界里,魔法方法(Magic Methods)和运算符重载(Operator Overloading)是两个强大的特性,它们允许开发者以更自然、更直观的方式操作对象。本文将深入探讨这些概念,并通过实例展示如何利用它们来增强代码的可读性和表达力。
|
1月前
|
Python
Python中的push方法详解与实例
Python中的push方法详解与实例
|
1月前
|
Linux Python
Python获得本机本地ip地址的方法
【10月更文挑战第8天】 socket模块包含了丰富的函数和方法,可以获取主机的ip地址,例如gethostbyname方法可以根据主机名获取ip地址,gethostbyname_ex方法可以获得本机所有ip地址列表,也可以使用netifaces模块获取网卡信息。
42 0
|
1月前
|
SQL 安全 数据库
Python防止SQL注入攻击的方法
Python防止SQL注入攻击的方法
67 0
|
1月前
|
Python
Python中tqdm模块的常用方法和示例
`tqdm` 是一个快速、可扩展的Python进度条库,适用于长循环中添加进度提示。通过封装迭代器 `tqdm(iterator)`,可以轻松实现进度显示。支持自定义描述、宽度及嵌套进度条,适用于多种迭代对象。在Jupyter notebook中,可自动调整显示效果。
40 0
|
1月前
|
Python
Python中threading模块的常用方法和示例
Python 的 `threading` 模块提供了多线程编程的能力,允许同时执行多个线程。主要类包括 `Thread`、`Lock` 和 `Condition`。`Thread` 类用于创建和管理线程,`Lock` 用于同步线程,防止资源竞争,`Condition` 用于线程间协调。本文介绍了这些类的常用方法及示例代码,帮助你更好地理解和使用多线程编程。
29 0
|
1月前
|
Shell Python
Python中os模块的常用方法和示例
在Python中,`os`模块提供了与操作系统交互的函数,用于文件和目录管理、路径操作、环境变量等。常用方法包括路径操作(如`os.path.join()`、`os.path.abspath()`)、文件和目录管理(如`os.mkdir()`、`os.remove()`)、环境变量和进程管理(如`os.getenv()`、`os.system()`)以及其他常用功能(如`os.getcwd()`、`os.urandom()`)。
31 0
下一篇
无影云桌面