Python私有属性私有方法应用实例解析


Posted in Python onSeptember 15, 2020

01. 应用场景及定义方式

应用场景

  • 在实际开发中,对象 的 某些属性或方法 可能只希望 在对象的内部被使用,而 不希望在外部被访问到
  • 私有属性 就是 对象 不希望公开的 属性
  • 私有方法 就是 对象 不希望公开的 方法

定义方式

在 定义属性或方法时,在 属性名或者方法名前 增加 两个下划线,定义的就是 私有 属性或方法

class Women:

  def __init__(self, name):

    self.name = name
    # 不要问女生的年龄
    self.__age = 18

  def __secret(self):
    print("我的年龄是 %d" % self.__age)
xiaofang = Women("小芳")
# 私有属性,外部不能直接访问
# print(xiaofang.__age)

# 私有方法,外部不能直接调用
# xiaofang.__secret()

02. 伪私有属性和私有方法(科普)

提示:在日常开发中,不要使用这种方式,访问对象的 私有属性 或 私有方法

Python 中,并没有 真正意义 的 私有

在给 属性、方法 命名时,实际是对 名称 做了一些特殊处理,使得外界无法访问到
处理方式:在 名称 前面加上 _类名 => _类名__名称

# 私有属性,外部不能直接访问到
print(xiaofang._Women__age)

# 私有方法,外部不能直接调用
xiaofang._Women__secret()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python自动化工具日志查询分析脚本代码实现
Nov 26 Python
python中while循环语句用法简单实例
May 07 Python
Python 递归函数详解及实例
Dec 27 Python
Python编程实现双链表,栈,队列及二叉树的方法示例
Nov 01 Python
python中实现k-means聚类算法详解
Nov 11 Python
pandas 两列时间相减换算为秒的方法
Apr 20 Python
python自动发送邮件脚本
Jun 20 Python
python 多进程共享全局变量之Manager()详解
Aug 15 Python
Python使用Turtle库绘制一棵西兰花
Nov 23 Python
python kafka 多线程消费者&手动提交实例
Dec 21 Python
python tqdm实现进度条的示例代码
Nov 10 Python
selenium框架中driver.close()和driver.quit()关闭浏览器
Dec 08 Python
PyQt5多线程防卡死和多窗口用法的实现
Sep 15 #Python
PyQt5结合matplotlib绘图的实现示例
Sep 15 #Python
pycharm激活方法到2099年(激活流程)
Sep 22 #Python
pycharm专业版远程登录服务器的详细教程
Sep 15 #Python
深入浅析pycharm中 Make available to all projects的含义
Sep 15 #Python
pycharm-professional-2020.1下载与激活的教程
Sep 21 #Python
有关pycharm登录github时有的时候会报错connection reset的问题
Sep 15 #Python
You might like
WINDOWS服务器安装多套PHP的另类解决方案
2006/10/09 PHP
destoon调用discuz论坛中带图片帖子的实现方法
2014/08/21 PHP
win7系统配置php+Apache+mysql环境的方法
2015/08/21 PHP
PHP基于cookie与session统计网站访问量并输出显示的方法
2016/01/15 PHP
基于PHP实现商品成交时发送短信功能
2016/05/11 PHP
PHP树-不需要递归的实现方法
2016/06/21 PHP
如何在Laravel5.8中正确地应用Repository设计模式
2019/11/26 PHP
Javascript的一种模块模式
2010/09/08 Javascript
利用JS自动打开页面上链接的实现代码
2011/09/25 Javascript
javascript调试之DOM断点调试法使用技巧分享
2014/04/15 Javascript
js 左右悬浮对联广告特效代码
2014/12/12 Javascript
Javascript基于对象三大特性(封装性、继承性、多态性)
2016/01/04 Javascript
js字符串操作总结(必看篇)
2016/11/22 Javascript
jQuery Validate 数组 全部验证问题
2017/01/12 Javascript
angular2+nodejs实现图片上传功能
2017/03/27 NodeJs
快速将Vue项目升级到webpack3的方法步骤
2017/09/14 Javascript
如何通过javaScript去除字符串两端的空白字符
2020/02/06 Javascript
前端如何实现动画过渡效果
2021/02/05 Javascript
[02:23]2016国际邀请赛中国区预选赛wings晋级之路
2016/06/29 DOTA
python算法学习之基数排序实例
2013/12/18 Python
Python编程实战之Oracle数据库操作示例
2017/06/21 Python
python实现逆序输出一个数字的示例讲解
2018/06/25 Python
Python3.7实现中控考勤机自动连接
2018/08/28 Python
Python urllib2运行过程原理解析
2020/06/04 Python
css3学习心得分享
2013/08/19 HTML / CSS
Expedia马来西亚旅游网站:廉价酒店,度假村和航班预订
2016/07/26 全球购物
Sam’s Club山姆会员商店:沃尔玛旗下高端会员制商店
2017/01/16 全球购物
StubHub美国:购买或出售您的门票
2019/07/09 全球购物
意大利奢侈品牌在线精品店:Jole.it
2020/11/23 全球购物
如何撰写岗位职责
2014/02/01 职场文书
领导党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
2014年语文教研组工作总结
2014/12/06 职场文书
2015年度物业公司工作总结
2015/04/27 职场文书
2015年社区消防安全工作总结
2015/10/14 职场文书
《七月的天山》教学反思
2016/02/19 职场文书
详解Python如何批量采集京东商品数据流程
2022/01/22 Python