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开发微信支付的注意事项
Aug 19 Python
浅谈Python类里的__init__方法函数,Python类的构造函数
Dec 10 Python
Python实现字符串与数组相互转换功能示例
Sep 22 Python
Python程序员面试题 你必须提前准备!
Jan 16 Python
在Windows中设置Python环境变量的实例讲解
Apr 28 Python
Python键盘输入转换为列表的实例
Jun 23 Python
Python get获取页面cookie代码实例
Sep 12 Python
python读取各种文件数据方法解析
Dec 29 Python
python之拟合的实现
Jul 19 Python
详解程序意外中断自动重启shell脚本(以Python为例)
Jul 26 Python
python用线性回归预测股票价格的实现代码
Sep 04 Python
Python 多线程C段扫描、检测 Ping扫描脚本的实现
Sep 03 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中在数据库中保存Checkbox数据(1)
2006/10/09 PHP
无需重新编译php加入ftp扩展的解决方法
2013/02/07 PHP
浅谈PHP调用Webservice思路及源码分享
2014/06/04 PHP
通过php修改xml文档内容的方法
2015/01/23 PHP
php $_SESSION会员登录实例分享
2021/01/19 PHP
javascript full screen 全屏显示页面元素的方法
2013/09/27 Javascript
js中继承的几种用法总结(apply,call,prototype)
2013/12/26 Javascript
多个checkbox被选中时如何判断是否有自己想要的
2014/09/22 Javascript
jQuery实现鼠标单击网页文字后在文本框显示的方法
2015/05/06 Javascript
Jquery EasyUI Datagrid右键菜单实现方法
2016/12/30 Javascript
jQuery实现滚动条滚动到子元素位置(方便定位)
2017/01/08 Javascript
JavaScript事件方法(实例讲解)
2017/06/27 Javascript
解决Vue中引入swiper,在数据渲染的时候,发生不滑动的问题
2018/09/27 Javascript
JavaScript动态创建二维数组的方法示例
2019/02/01 Javascript
详解Vue源码中一些util函数
2019/04/24 Javascript
jquery实现上传图片功能
2020/06/29 jQuery
[02:29]DOTA2英雄基础教程 陈
2013/12/17 DOTA
Python中使用PIL库实现图片高斯模糊实例
2015/02/08 Python
Python进阶-函数默认参数(详解)
2017/05/18 Python
python查找指定文件夹下所有文件并按修改时间倒序排列的方法
2018/10/21 Python
利用django+wechat-python-sdk 创建微信服务器接入的方法
2019/02/20 Python
使用pandas实现连续数据的离散化处理方式(分箱操作)
2019/11/22 Python
python简单实现最大似然估计&amp;scipy库的使用详解
2020/04/15 Python
用python对excel进行操作(读,写,修改)
2020/12/25 Python
美国知名的百货清仓店:Neiman Marcus Last Call
2016/08/03 全球购物
Topman美国官网:英国著名的国际平价时尚男装品牌
2017/12/22 全球购物
Araks官网:纽约内衣品牌
2020/10/15 全球购物
PHP面试题大全
2015/10/16 面试题
经验丰富大学生村干部自我鉴定
2014/01/22 职场文书
《尊严》教学反思
2014/02/11 职场文书
好人好事事迹材料
2014/02/12 职场文书
少年闰土教学反思
2014/02/22 职场文书
2015元旦节寄语
2014/12/08 职场文书
小学中等生评语
2014/12/29 职场文书
学雷锋倡议书
2015/01/19 职场文书
英文升职感谢信
2015/01/23 职场文书