博客
关于我
Python中的私有方法
阅读量:796 次
发布时间:2023-03-09

本文共 1111 字,大约阅读时间需要 3 分钟。

Python中的私有方法

在Python中,私有方法通常以双下划线(__)开头,例如__private_method()。这种方式的目的是为了隐藏类的内部实现细节,只供类本身或者其子类使用。

下面是如何定义一个带有私有方法的类的一个简单示例:

class MyClass:    def __init__(self, name):        self.__name = name  # 这是一个私有变量    def get_name(self):        return self.__name  # 获取私有变量的值    def __private_method(self):        print("这是私有的方法,只有MyClass本身或者其子类可以访问")

测试用例

m = MyClass('Alice')print(m.get_name())  # 输出: Alicem.__private_method()  # 会抛出异常:AttributeError: 'MyClass' object has no attribute '__private_method'

class YourClass(MyClass):def init(self, name):super().init(name)def call_private_method(self):self.__private_method() # 这里可以调用到父类的私有方法

y = YourClass('Bob')print(y.get_name())  # 输出: Boby.call_private_method()  # 输出: 这是私有的方法,只有MyClass本身或者其子类可以访问在这个例子中,我们定义了一个名为`MyClass`的类,其中包含一个私有变量`__name`和一个私有方法`__private_method`。然后我们尝试在外部直接调用这个私有方法,这将引发一个`AttributeError`异常。接下来,我们定义了一个继承自`MyClass`的新类`YourClass`。在这个子类中,我们通过`super().__init__(name)`调用了父类的构造函数,这使得我们可以访问到父类的私有变量和私有方法。然后,我们在`YourClass`中定义了一个名为`call_private_method`的方法,这个方法通过`self.__private_method()`调用了父类的私有方法。通过这种方式,我们可以在Python中使用私有方法来隐藏类的内部实现细节,同时保证类本身的可维护性和安全性。

转载地址:http://jtlfk.baihongyu.com/

你可能感兴趣的文章
python+locust电商全流程性能测试
查看>>
Python函数运行的可执行文件的终端输出如何以一般方式静音?
查看>>
Python+Pytest+Allure+Git+Jenkins接口自动化框架
查看>>
python+pytest接口自动化 —— 参数关联
查看>>
python+pytest接口自动化 —— 参数关联
查看>>
python+pytest接口自动化 —— 自动化用例编写思路 (使用pytest编写一个测试脚本)
查看>>
Python+pytest接口自动化之cookie绕过登录(保持登录状态)
查看>>
python+pytest接口自动化:接口测试
查看>>
Python+requests+unittest执行接口自动化测试详情
查看>>
Python+requests+unittest执行接口自动化测试详情
查看>>
python+requests+unittest执行自动化接口测试!
查看>>
Python+Requests编码识别Bug
查看>>
python函数编写_[零基础学python]传说中的函数编写条规
查看>>
Python+selenium —— UI自动化之鼠标操作
查看>>
python函数注释,参数后面加冒号:,函数后面的箭头→是什么?
查看>>
Python+Selenium+Threading进行兼容性测试
查看>>
Python+selenium+unittest的GUI自动化框架实现
查看>>
python函数拟合不规则曲线_Python计算&绘图——曲线拟合问题(转)
查看>>
python函数定义的基本格式_零基础学python-2.19 定义函数、调用函数与默认参数
查看>>
Python+Selenium之数据驱动测试的实现
查看>>