Python類如何定義私有變量
這篇文章主要介紹了Python類如何定義私有變量,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
前言
在java 的類中,如果你要定義一個(gè)私有變量,可以用修飾詞 private,那么在Python 的類中呢,Python中沒public private之類的修飾詞,那Python 是如何定義私有變量的呢?
私有變量
在Python 類中定義私有變量,只要在變量前加 __ (兩個(gè)下劃線) ,那么該類的實(shí)例就不能引用了,看下面實(shí)例
>>> 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的實(shí)例d可以不能調(diào)用變量__a,那實(shí)例d 有沒有辦法調(diào)用到__a呢,看下面的調(diào)用語法:
>>> d._demo__a 1
實(shí)例名+'_'+類名+私有變量 ,就能調(diào)用。大家記住這樣的語法。
私有方法
私有方法同私有變量的語法也是一樣的,我們直接看示例:
>>> class fun(object):
... def __a(self):
... print('聚焦學(xué)院AAA')
... def b(self):
... print('聚焦學(xué)院BBB')
...
>>> f = fun()
>>> f.b()
聚焦學(xué)院BBB
>>> f.__a()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'fun' object has no attribute '__a'
>>> f._fun__a()
聚焦學(xué)院AAA
從上面的示例中可以看到,類的實(shí)例要調(diào)用私有方法也是和調(diào)用私有變量的語法一樣。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python實(shí)現(xiàn)使用遺傳算法進(jìn)行圖片擬合
最近做項(xiàng)目需要圖像擬合,本文主要介紹了python實(shí)現(xiàn)使用遺傳算法進(jìn)行圖片擬合,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03
python使用pika庫調(diào)用rabbitmq參數(shù)使用詳情
這篇文章主要介紹了python使用pika庫調(diào)用rabbitmq參數(shù)使用詳情,文章通過展開文章主題分享了三種方式,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-08-08
PyTorch?Distributed?Data?Parallel使用詳解
這篇文章主要為大家介紹了PyTorch?Distributed?Data?Parallel使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03
Python搭建監(jiān)控平臺的實(shí)現(xiàn)示例
本文主要介紹了Python搭建監(jiān)控平臺的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
Python中如何實(shí)現(xiàn)MOOC掃碼登錄
這篇文章主要介紹了Python中如何實(shí)現(xiàn)MOOC掃碼登錄,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01
Python使用指定字符長度切分?jǐn)?shù)據(jù)示例
今天小編就為大家分享一篇Python使用指定字符長度切分?jǐn)?shù)據(jù)示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12

