首页 > 编程 > Python > 正文

Python类如何定义私有变量

2020-02-15 21:26:39
字体:
来源:转载
供稿:网友

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

前言

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

私有变量

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

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

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

>>> d._demo__a1

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

私有方法

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

>>> 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

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林站长站。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表