(python属性名以两个下划线开头)(python 属性名)

(python属性名以两个下划线开头)(python 属性名)

这篇文章主要介绍了python中单下划线(_)和双下划线(__)的特殊用法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

(python属性名以两个下划线开头)(python 属性名)

函数使用单下划线_开头

(python画矩阵)(python 栅格矩阵)

使用单下划线(_)开头的函数_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)

(莲花绘本ppt)(莲花 ppt模板)

self.addr = addr

self.a_nick_name = self._BaseCls__nick_name_

总结

以上所述是小编给大家介绍的python中单下划线(_)和双下划线(__)的特殊用法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。关注公众号与大神近距离接触,私信回复“资料”即可获得学习资料,也可获得it大神的联系方式。

声明:我要去上班所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者所有,原文出处。若您的权利被侵害,请联系删除。

本文标题:(python属性名以两个下划线开头)(python 属性名)
本文链接:https://www.51qsb.cn/article/7201.html

(0)
打赏微信扫一扫微信扫一扫QQ扫一扫QQ扫一扫
上一篇2022-09-20
下一篇2022-09-22

你可能还想知道

发表回复

登录后才能评论