私有函数和私有变量
什么是私有函数和私有变量
- 无法被实例化后的对象调用的类中的函数与变量
- 类的内部可以调用私有函数与变量
- 只希望类内部业务调用使用,不希望被使用者使用
私有函数与私有变量的定义方法
- 在一个变量或函数前添加
__(2个下横线),变量或函数名后边无需添加
| class Person(object): | |
| def __init__(self, name): | |
| self.name = name | |
| self.__age = 33 # 私有 | |
| def dump(self): | |
| print(self.name, self.__age) # 私有 | |
| def __cry(self): # 私有 | |
| return 'I want cry' |
代码
| # coding:utf-8 | |
| class Cat(object): | |
| __cat_type = 'cat' | |
| def __init__(self, name, sex): | |
| self.name = name | |
| self.__sex = sex | |
| def run(self): | |
| result = self.__run() | |
| print(result) | |
| def __run(self): | |
| return f'{self.__cat_type},小猫{self.name}{self.__sex}开心的奔跑着' | |
| def dump(self): | |
| result = self.__dump() | |
| print(result) | |
| def __dump(self): | |
| return f'{self.__cat_type}小猫{self.name}{self.__sex}开心的跳着' | |
| class Test(object): | |
| pass | |
| cat = Cat(name='米粒儿', sex='boy') | |
| cat.run() | |
| cat.dump() | |
| print(dir(cat)) | |
| # print(cat._Cat__dump()) |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ZkeqのCoding日志!
评论






