社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

julemand101 Simon Stanford

julemand101 Simon Stanford 最近创建的主题
julemand101 Simon Stanford 最近回复了
3 年前
回复了 julemand101 Simon Stanford 创建的主题 » 为什么在下面的Python代码中可以打印私有成员_分子和_分母?[重复]

这是文化。在Python中,您不会写入其他类的实例或类变量。在Java中,如果您 真正地 想要——毕竟,您可以随时编辑类本身的源代码,以达到相同的效果。Python放弃了安全性的伪装,鼓励程序员负责任。实际上,这非常有效。

如果出于某种原因想要模拟私有变量,可以始终使用 __ 前缀来自 PEP 8 .Python会破坏变量的名称,比如 __foo 这样它们就不容易被包含它们的类之外的代码看到(尽管 可以 如果你有足够的决心,就像你自己一样,那就绕开它 可以 如果你在做Java的保护工作,那就绕开它)。

按照同样的惯例 _ 前缀的意思是 即使你在技术上没有被阻止,也要远离 .你不能玩弄另一个类的变量 __福 _bar .