为什么python没有访问修饰符?python中有什么替代品?

urz*_*hah 11 python access-modifiers

为什么python没有像c#,java那样的访问修饰符,例如public,private等.在python中封装和信息隐藏的替代方法是什么.

Bio*_*eek 11

来自维基百科:

[Python]使用名称修改对私有变量的支持有限.有关详细信息,请参阅本教程"类"部分.但是,许多Python用户并不觉得需要私有变量.口号"我们都在这里同意成年人"用于描述这种态度.有些人认为信息隐藏是单声道的,因为它表明所讨论的类包含不美观或计划不周的内部.但是,名称修改的最强参数是防止程序不可预测的破坏:在超类中引入新的公共变量如果不使用"私有"变量可能会破坏子类.

从教程: 正如模块一样,Python中的类不会在定义和用户之间设置绝对障碍,而是依赖于用户的礼貌而不是"闯入定义".

同样的情绪在The Hitchhiker's Python指南中我们都同意成人段落中有所描述!