保护的属性、私有属性、porperty
保护属性
_foo:以单下划线开头的表示protected(保护)类型的成员,只允许类本身和子类进行访问,但在模板中直接定义的时候不允许通过from module import * 语句导入,但是可以通过导入整个模板进行导入。


私有属性
__foo:以双下划线开头的表示私有类型的成员,不允许实例进行访问。但在模板中直接定义的时候不允许通过from module import * 语句导入,但是可以通过导入整个模板进行导入。


但是可以通过:实例名._类名__私有属性 访问

对私有属性与保护属性进行赋值的时候最好进行一个专用函数的调用赋值,还可以在专用函数中进行限制条件的添加。

property
在类中提供的property函数可以将某两个函数,变为某个属性。
property的第一种方法为:

这种方法的使用时两个赋值与取值的函数名必须相同,直接使用@property时是进行取值函数转化为属性,属性名为函数名,并且必须在setter赋值函数的前面。
第二种方法为:

此方法使用时,赋值函数与取值函数的函数名不做要求,但是使用property的时候必须取值函数在前,赋值函数在后,限制的属性为property赋值给的变量名,如(num = property(num1,num2))
本文介绍了Python中保护属性和私有属性的概念及其使用方法,包括单下划线和双下划线开头的属性特点。此外,还详细讲解了如何利用property函数实现属性的封装,提高代码的安全性和灵活性。
686

被折叠的 条评论
为什么被折叠?



