第八章、python的类及其应用(8.2.4-8.2.5)------类中的实例方法、类方法、静态方法及参数self、cls、类的属性

本文详细介绍了Python中的类方法、实例方法和静态方法,包括它们的定义、参数特点、调用方式及应用场景。类方法通过`@classmethod`装饰器标识,参数`cls`指向类本身;实例方法有`self`参数,指向实例对象;静态方法通过`@staticmethod`装饰器定义,不使用`self`或`cls`参数,与类的实例或类本身无关。三种方法在类的不同场景下各有其作用,理解它们的区别对于Python面向对象编程至关重要。

目录
8.2.4类中的实例方法、类方法、静态方法及参数self、cls
(1)实例方法
(2)类方法
(3)静态方法
(4)实例方法、类方法、静态方法的对比
(5)实例方法、类方法、静态方法的特殊用法
8.2.5类的属性及其与方法、变量、函数的差异,dir()、hasattr()

8.2.4类中的实例方法、类方法、静态方法及参数self、cls

     下面提到的调用,表示名称是公有的,能被类的外部调用,不涉及到类的私有名称。在super()、元类(metaclass)中参数self、cls的用法比较特殊,下面讲到的self和cls不包括这些场景,关于super()、元类(metaclass)可以参考8.4.5

### 解决 macOS 上 XAMPP 安装程序的信任问题 在 macOS 上,由于系统对未签名的应用程序的限制,可能会遇到无法验证开发者的问题,导致无法直接打开 XAMPP 安装程序(如 `xampp-osx-8.2.4-0-installer`)。可以通过以下方法解决该问题: #### 1. **通过系统设置允许安装未知来源的应用程序** macOS 通常会阻止未签名的应用程序运行。可以手动更改系统设置以允许安装 XAMPP: - 打开“系统设置”(System Settings)或“系统偏好设置”(System Preferences)。 - 进入“隐私与安全性”(Privacy & Security)部分。 - 在“通用”(General)选项卡中,找到“允许从以下位置下载的应用程序”(Allow apps downloaded from)。 - 点击“仍要打开”(Open Anyway)或选择“任何来源”(Anywhere)以允许运行未签名的应用程序[^1]。 #### 2. **使用终端命令解除应用程序的隔离属性** 如果 macOS 对 XAMPP 安装程序应用了隔离属性(quarantine),可以使用终端命令移除该属性: ```bash xattr -rd com.apple.quarantine /path/to/xampp-osx-8.2.4-0-installer.dmg ``` 将 `/path/to/` 替换为实际的文件路径。执行该命令后,系统将不再阻止该文件运行[^1]。 #### 3. **挂载 DMG 文件并手动安装** 如果安装程序仍然无法运行,可以尝试手动挂载 `.dmg` 文件并将 XAMPP 安装到应用程序文件夹: - 双击下载的 `.dmg` 文件,它会自动挂载并显示 XAMPP 图标。 - 将 XAMPP 拖拽到“Applications”文件夹。 - 前往“应用程序”文件夹,右键点击 XAMPP 应用程序,选择“打开”以绕过安全性限制[^1]。 #### 4. **使用终端直接运行安装脚本** XAMPP 的 `.dmg` 文件通常包含一个安装脚本。可以通过终端直接运行该脚本来完成安装: ```bash cd /Volumes/XAMPP ./xampp-installer-osx-8.2.4-0.run ``` 确保路径与实际挂载的卷名和安装脚本名称一致。执行该脚本后,按照提示完成安装过程[^1]。 --- ### 示例代码:解除隔离属性的命令 ```bash xattr -rd com.apple.quarantine /Applications/xampp-osx-8.2.4-0-installer.dmg ``` --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

thefg

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值