Python类如何定义私有变量


Posted in Python onFebruary 03, 2020

这篇文章主要介绍了Python类如何定义私有变量,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

前言

在java 的类中,如果你要定义一个私有变量,可以用修饰词 private,那么在Python 的类中呢,Python中没public private之类的修饰词,那Python 是如何定义私有变量的呢?

私有变量

在Python 类中定义私有变量,只要在变量前加 __ (两个下划线) ,那么该类的实例就不能引用了,看下面实例

>>> class demo(object):
...   __a =1
...   b = 2
...
>>> d = demo()
>>> print(d.b)
>>> d.__a
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
AttributeError: 'demo' object has no attribute '__a'

从上面的示例中可以看到,类demo的实例d可以不能调用变量__a,那实例d 有没有办法调用到__a呢,看下面的调用语法:

>>> d._demo__a
1

实例名+'_'+类名+私有变量 ,就能调用。大家记住这样的语法。

私有方法

私有方法同私有变量的语法也是一样的,我们直接看示例:

>>> class fun(object):
...   def __a(self):
...       print('聚焦学院AAA')
...   def b(self):
...       print('聚焦学院BBB')
...
>>> f = fun()
>>> f.b()
聚焦学院BBB
>>> f.__a()
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
AttributeError: 'fun' object has no attribute '__a'
>>> f._fun__a()
聚焦学院AAA

从上面的示例中可以看到,类的实例要调用私有方法也是和调用私有变量的语法一样。

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

Python 相关文章推荐
python解析xml文件操作实例
Oct 05 Python
python使用webbrowser浏览指定url的方法
Apr 04 Python
TensorFlow 实战之实现卷积神经网络的实例讲解
Feb 26 Python
解决python删除文件的权限错误问题
Apr 24 Python
django之跨表查询及添加记录的示例代码
Oct 16 Python
python 将字符串完成特定的向右移动方法
Jun 11 Python
python字典一键多值实例代码分享
Jun 14 Python
Python-jenkins 获取job构建信息方式
May 12 Python
Django正则URL匹配实现流程解析
Nov 13 Python
Python爬虫之Selenium实现关闭浏览器
Dec 04 Python
Python 可视化神器Plotly详解
Dec 26 Python
python爬取企查查企业信息之selenium自动模拟登录企查查
Apr 08 Python
python异常处理try except过程解析
Feb 03 #Python
利用Python脚本实现自动刷网课
Feb 03 #Python
tensorflow 限制显存大小的实现
Feb 03 #Python
基于tensorflow指定GPU运行及GPU资源分配的几种方式小结
Feb 03 #Python
tensorflow指定GPU与动态分配GPU memory设置
Feb 03 #Python
TensorFlow内存管理bfc算法实例
Feb 03 #Python
python numpy数组中的复制知识解析
Feb 03 #Python
You might like
浅析PHP递归函数返回值使用方法
2013/02/18 PHP
经常用到的JavasScript事件的翻译
2007/04/09 Javascript
jquery scrollTop方法根据滚动像素显示隐藏顶部导航条
2013/05/27 Javascript
jQuery获取Radio,CheckBox选择的Value值(示例代码)
2013/12/12 Javascript
JavaScript定义类和对象的方法
2014/11/26 Javascript
jQuery解析XML与传统JavaScript方法的差别实例分析
2015/03/05 Javascript
纯JS实现本地图片预览的方法
2015/07/31 Javascript
artDialog+plupload实现多文件上传
2016/07/19 Javascript
JavaScript制作颜色反转小游戏
2016/09/25 Javascript
js replace()去除代码中空格的实例
2017/02/14 Javascript
js-FCC算法-No repeats please字符串的全排列(详解)
2017/05/02 Javascript
详解axios在vue中的简单配置与使用
2017/05/10 Javascript
jQuery+C#实现参数RSA加密传输功能【附jsencrypt.js下载】
2017/06/26 jQuery
在vue-cli项目中使用bootstrap的方法示例
2018/04/21 Javascript
解决node修改后需频繁手动重启的问题
2018/05/13 Javascript
浅谈React Event实现原理
2018/09/20 Javascript
js根据json数据中的某一个属性来给数据分组的方法
2018/10/08 Javascript
vue 解决遍历对象显示的顺序不对问题
2019/11/07 Javascript
Python模块学习 re 正则表达式
2011/05/19 Python
在Python中使用poplib模块收取邮件的教程
2015/04/29 Python
Python的shutil模块中文件的复制操作函数详解
2016/07/05 Python
numpy.linspace 生成等差数组的方法
2018/07/02 Python
opencv python统计及绘制直方图的方法
2019/01/21 Python
解决在pycharm运行代码,调用CMD窗口的命令运行显示乱码问题
2019/08/23 Python
使用Python实现正态分布、正态分布采样
2019/11/20 Python
关于pytorch中全连接神经网络搭建两种模式详解
2020/01/14 Python
Python代码覆盖率统计工具coverage.py用法详解
2020/11/25 Python
使用CSS3的::selection改变选中文本颜色的方法
2015/09/29 HTML / CSS
德国户外装备、登山运动和攀岩商店:tapir store
2020/02/12 全球购物
四年大学生活的个人自我评价
2013/12/11 职场文书
岗位竞聘演讲稿
2014/01/10 职场文书
质量承诺书格式
2014/05/20 职场文书
党的群众路线教育实践活动调研报告
2014/11/03 职场文书
干部考核工作总结
2015/08/12 职场文书
jQuery实现影院选座订座效果
2021/04/13 jQuery
利用Redis实现点赞功能的示例代码
2022/06/28 Redis