小编给大家分享一下Python中私有属性及私有方法怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
具体如下:
如果有一个对象,当需要对其进行修改属性时,有2种方法:
(1)对象名.属性名=数据---->直接修改
(2)对象名.方法名()----->间接修改
为了更好的保障属性安全,不能随意修改,一般处理方式为:
(1)将属性定义为私有属性
(2)添加一个可以调用的方法,供调用,也就是间接调用属性
首先我讲解下私有属性的例子:
1.下面这个是一个错误的例子:
class People(object):
def __init__(self,name):
self.__name=name
def getName(self):
return self.__name
def setName(self,newName):
if len(newName) >= 5:
self.__name = newName
else:
print("error:名字长度需要大于或者等于5")
xiaoming = People("monkey")
print(xiaoming.__name)
这是错误的,因为直接输出了私有的属性,是不可以的,解决方式为:或者删掉object也行
class People(object):
def __init__(self,name):
self.__name=name
def getName(self):
return self.__name
def setName(self,newName):
if len(newName) >= 5:
self.__name = newName
else:
print("error:名字长度需要大于或者等于5")
xiaoming = People("monkey")
print(xiaoming.getName()) #这样就是通过调用方法来间接调用属性
下面讲解一个私有方法的例子:
class Dog:
#私有方法,在方法名前面加上两个下划线
def __test1(self):
print("1")
def test2(self):
print("2")
dog=Dog()
dog.__test1() #报错
dog.test2() #正确
私有方法是不能直接调用的
以上是“Python中私有属性及私有方法怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
网络异常,请检查网络