国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python私有屬性和方法實例分析

2020-02-23 06:20:25
字體:
來源:轉載
供稿:網友

本文實例分析了python的私有屬性和方法。分享給大家供大家參考。具體實現(xiàn)方法如下:

python默認的成員函數和成員變量都是公開的,并且沒有類似別的語言的public,private等關鍵詞來修飾。 在python中定義私有變量只需要在變量名或函數名前加上 "__"兩個下劃線,那么這個函數或變量就會為私有的了。 在內部,python使用一種 name mangling 技術,將 __membername替換成 _classname__membername,所以你在外部使用原來的私有成員的名字時,會提示找不到。 比如:
代碼如下:class Person:

   def __init__(self):
       self.__name = 'haha'#私有屬性
       self.age = 22

   def __get_name(self):##私有方法
       return self.__name

   def get_age(self):
       return self.age

person = Person()
print person.get_age()
print person.__get_name()
運行結果是:22 Traceback (most recent call last): File "E:/pythoner/zenghe/jay.py", line 38, in print person.__get_name() AttributeError: Person instance has no attribute '__get_name'

我們這里定義的__name是私有屬性,__get_name()是私有方法。如果直接訪問的話,會提示找不到相關的屬性或者方法,但是如果你真要訪問私有的相關數據的話, 也是可以訪問的,嚴格地說,私有方法在它們的類外是可以訪問的,只是不容易 處理。在 Python 中沒有什么是真正私有的;在內部,私有方法和屬性的名字被忽然改變和恢復,以致于使得它們看上去用它們給定的名字是無法使用的

希望本文所述對大家的Python程序設計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 正定县| 浦城县| 个旧市| 陈巴尔虎旗| 米林县| 德阳市| 保定市| 清原| 岗巴县| 南平市| 新和县| 三门县| 庆安县| 屏边| 五大连池市| 墨玉县| 闽侯县| 平乐县| 神农架林区| 开封县| 宣恩县| 甘孜县| 上饶市| 利辛县| 陕西省| 崇礼县| 沿河| 涿鹿县| 三河市| 双流县| 东安县| 大足县| 贵阳市| 麻阳| 沈阳市| 通化县| 荆州市| 孟村| 邮箱| 枞阳县| 贵州省|