這篇文章主要介紹了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
從上面的示例中可以看到,類的實例要調用私有方法也是和調用私有變量的語法一樣。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林站長站。
新聞熱點
疑難解答