介绍
怎么在python中使用单下划线(_)和双下划线(__)?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
python主要应用领域有哪些
1,云计算,典型应用OpenStack.2,网前端开发,众多大型网站均为python开发。3。人工智能应用,基于大数据分析和深度学习而发展出来的人工智能本质上已经无法离开python.4,系统运维工程项目,自动化运维的标配就是python + Django/flask.5,金融理财分析,量化交易,金融分析。6,大数据分析。
<强>函数使用单下划线_开头强>
使用单下划线(_)开头的函数_func不能被模块外部以:从模块导入*形式导入。
但可以用:从模块导入_func形式单独导入。
<强>类属性和类方法使用单下划线_开头
强>
_开头为保护类型的属性和方法,仅允许类内部和子类访问,类实例无法访问此属性和方法。
<强>类属性和类方法使用双下划线__开头强>
__开头为私有类型属性和方法,仅允许类内部访问,类实例和派生类均不能访问此属性和方法。
所以双划线比单划线权限更严格。
<>强补充说明强>
对于__开头的属性和方法如果派生类一定要访问,使用单下划线+基类名+双下划线开头的属性和方法的形式,
且双下划线开头的属性和方法后面最多只能以一个单下划线结束,否则也无法访问。
class BaseCls: def 才能;__init__(自我,,名字,,年龄,nick_name): ,,,self.name =,名字 ,,,self.__nick_name_ =, nick_name #, __nick_name后面最多以一个_结束,否则通过基类名混淆的方式也无法访问了。 ,,,self.age =,年龄 class SubCls (BaseCls): def 才能;__init__(自我,,名字,,年龄,addr,, nick_name): ,,,超级(). __init__(姓名、年龄、祝福;nick_name) ,,,self.addr =addr ,,,self.a_nick_name =自我。_BaseCls__nick_name_
看完上述内容,你们掌握怎么在python中使用单下划线(_)和双下划线(__)的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!