python中单下划线(_)和双下划线(__)的特殊用法
作者:BRYANT_2019 时间:2022-08-09 22:23:22
函数使用单下划线_开头
使用单下划线(_)开头的函数_func不能被模块外部以: from module import *形式导入。
但可以用:from module import _func形式单独导入。
类属性和类方法使用单下划线_开头
_开头为保护类型的属性和方法,仅允许类内部和子类访问,类实例无法访问此属性和方法。
类属性和类方法使用双下划线__开头
__开头为私有类型属性和方法,仅允许类内部访问,类实例和派生类均不能访问此属性和方法。
所以双划线比单划线权限更严格。
补充说明
对于__开头的属性和方法如果派生类一定要访问,使用单下划线+基类名+双下划线开头的属性和方法的形式,
且双下划线开头的属性和方法后面最多只能以一个单下划线结束,否则也无法访问。
class BaseCls:
def __init__(self, name, age, nick_name):
self.name = name
self.__nick_name_ = nick_name # __nick_name后面最多以一个_结束,否则通过基类名混淆的方式也无法访问了。
self.age = age
class SubCls(BaseCls):
def __init__(self, name, age, addr, nick_name):
super().__init__(name, age, nick_name)
self.addr = addr
self.a_nick_name = self._BaseCls__nick_name_
总结
以上所述是小编给大家介绍的python中单下划线(_)和双下划线(__)的特殊用法,网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
来源:https://www.cnblogs.com/bryant24/archive/2019/08/29/11429653.html
标签:python,单下划线,下划线
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
PHP中类静态调用和范围解析操作符的区别解析
2023-11-15 07:38:39
python方法如何实现字符串反转
2022-10-26 22:07:03
![](https://img.aspxhome.com/file/2023/5/76175_0s.png)
python装饰器三种装饰模式的简单分析
2022-06-26 17:29:46
编写一个JS组件来说说call和apply的用法
2008-11-23 17:11:00
解析php中var_dump,var_export,print_r三个函数的区别
2023-11-24 12:27:02
Python Flask前后端Ajax交互的方法示例
2021-09-07 09:09:21
![](https://img.aspxhome.com/file/2023/0/75230_0s.png)
php下intval()和(int)转换使用与区别
2023-06-11 14:09:54
CSS样式表:详细介绍IE7新支持的选择器
2007-10-09 18:24:00
![](https://img.aspxhome.com/file/UploadPic/200710/9/2007109183241472s.png)
基于js里调用函数时,函数名带括号和不带括号的区别
2023-08-24 05:05:41
Django使用消息提示简单的弹出个对话框实例
2023-02-08 06:23:07
![](https://img.aspxhome.com/file/2023/1/66911_0s.jpg)
如何以及何时使用sIFR
2008-03-07 12:38:00
php处理json格式数据经典案例总结
2023-11-21 13:54:42
PHP实现用户认证及管理完全源码
2023-11-19 20:26:19
asp如何对多个条件进行判断?
2009-11-20 18:28:00
python的数据与matlab互通问题:SciPy
2022-05-16 04:53:48
跟老齐学Python之坑爹的字符编码
2021-07-13 06:07:38
![](https://img.aspxhome.com/file/2023/2/65462_0s.png)
将ASP纪录集输出成n列表格的方法
2008-03-19 13:27:00
Python入门教程4. 元组基本操作 <font color=red>原创</font>
2021-01-12 09:53:21
python绘制BA无标度网络示例代码
2021-05-29 14:01:52
![](https://img.aspxhome.com/file/2023/7/70817_0s.jpg)
超半数中文网页一年内将“消失”
2008-03-08 12:49:00