Discuss / Python / _xxx和__xxx这样的变量或函数在模块中与在类中的访问区别

_xxx和__xxx这样的变量或函数在模块中与在类中的访问区别

Topic source

这里提到: “private函数和变量“不应该”被直接引用,而不是“不能”被直接引用,是因为Python并没有一种方法可以完全限制访问private函数或变量,但是,从编程习惯上不应该引用private函数或变量。”

后面类的访问限制中又提到: “如果要让内部属性不被外部访问,可以把属性的名称前加上两个下划线,在Python中,实例的变量名如果以开头,就变成了一个私有变量(private)”

意思是模块中的私有变量在模块外事实上是可以访问的,但类中的私有变量就不能访问吧?

其实不管怎么样搞,都是可以访问的。

只是给你加了个限制。

就当java中的private吧


  • 1

Reply