欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python里運用私有屬性和方法總結(jié)

 更新時間:2019年07月08日 15:17:03   作者:燃燒的猛男1  
在本文里我們給大家分享了關(guān)于python里運用私有屬性和方法總結(jié)以及相關(guān)知識點內(nèi)容,有興趣的朋友們跟著參考學(xué)習(xí)下。

如何在PYTHON里運用私有屬性和方法

class File:

  def __init__(self, name):

    self.name = name

    self.code = "ABCDEF"

    

file_A = File("file_A")

#假設(shè)我們有一個類,叫做文件類,設(shè)置一個對象file_A。

file_A.code

#如果直接調(diào)用屬性,是可以看到屬性里面有什么,但是如果這是個機密的密碼不能公布,是不能這么處理的。

class File:

  def __init__(self, name):

    self.name = name

    self.__code = "ABCDEF"

    

file_A = File("file_A")

print(file_A.code)

#如果不想密碼公布,可以對屬性的名稱加上__,但是這里出錯了。

class File:

  def __init__(self, name):

    self.name = name

    self.__code = "ABCDEF"

    

file_A = File("file_A")

print(file_A.__code)

#很多人以為是因為外部的名稱打少了__,但是這里依舊出錯了,那是因為這是私有的屬性。

class File:

  def __init__(self, name):

    self.name = name

    self.__code = "ABCDEF"

  def open(self):

    print("This is the AAA file!")

    

file_A = File("file_A")

file_A.open()

#除了屬性,方法也能私有嗎?答案是可以的。

class File:

  def __init__(self, name):

    self.name = name

    self.__code = "ABCDEF"

  def __open(self):

    print("This is the AAA file!")

    

file_A = File("file_A")

file_A.__open()

#私有方法以后,看出來和私有屬性的返回結(jié)果是一致的。

class File:

  def __init__(self, name):

    self.name = name

    self.__code = "ABCDEF"

  def __open(self):

    print("This is the AAA file!")

    

file_A = File("file_A")

print(file_A._File__code)

file_A._File__open()

#在PYTHON里面如果在方法和屬性那里加上_類名是可以看到私有的屬性和方法的。

知識點擴展:

python默認的成員函數(shù)和成員變量都是公開的,python 私有屬性和方法沒有類似別的語言的public,private等關(guān)鍵詞來修飾。 在python中定義私有變量只需要在變量名或函數(shù)名前加上 "__"兩個下劃線,那么這個函數(shù)或變量就會為私有的了。 在內(nèi)部,python使用一種 name mangling 技術(shù),將 __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()
運行結(jié)果是: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()是私有方法。如果直接訪問的話,會提示找不到相關(guān)的屬性或者方法,但是如果你真要訪問私 有的相關(guān)數(shù)據(jù)的話, 也是可以訪問的,嚴(yán)格地說,私有方法在它們的類外是可以訪問的,只是不容易 處理。在 Python 中沒有什么是真正私有的;在內(nèi)部,私有方法和屬性的名字被忽然改變和恢復(fù),以致于使得它們看上去用它們給定的名字是無法使用的

相關(guān)文章

  • Python實現(xiàn)簡單猜拳游戲

    Python實現(xiàn)簡單猜拳游戲

    這篇文章主要為大家詳細介紹了Python實現(xiàn)簡單猜拳游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 一文學(xué)會使用OpenCV構(gòu)建文檔掃描儀

    一文學(xué)會使用OpenCV構(gòu)建文檔掃描儀

    本文將使用 OpenCV,創(chuàng)建一個簡單的文檔掃描儀,就像常用的攝像頭掃描儀應(yīng)用程序一樣,這篇文章主要給大家介紹了關(guān)于使用OpenCV構(gòu)建文檔掃描儀的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • python打開文件并獲取文件相關(guān)屬性的方法

    python打開文件并獲取文件相關(guān)屬性的方法

    這篇文章主要介紹了python打開文件并獲取文件相關(guān)屬性的方法,涉及Python操作文件的相關(guān)技巧,需要的朋友可以參考下
    2015-04-04
  • python實現(xiàn)動態(tài)創(chuàng)建類的方法分析

    python實現(xiàn)動態(tài)創(chuàng)建類的方法分析

    這篇文章主要介紹了python實現(xiàn)動態(tài)創(chuàng)建類的方法,結(jié)合實例形式分析了Python動態(tài)創(chuàng)建類的原理、實現(xiàn)方法及相關(guān)操作技巧,需要的朋友可以參考下
    2019-06-06
  • 利用Python pyecharts繪制餅圖

    利用Python pyecharts繪制餅圖

    這篇文章主要介紹了利用Python pyecharts繪制餅圖,餅圖主要用于表現(xiàn)不同類目的數(shù)據(jù)在總和中的占比。每個的弧度不是數(shù)據(jù)量的占比,下面我們一起進入文章看看具體的實現(xiàn)過程吧,需要的朋友也可以參考一下
    2021-12-12
  • Python繪制股票移動均線的實例

    Python繪制股票移動均線的實例

    今天小編就為大家分享一篇Python繪制股票移動均線的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python本地及虛擬解釋器配置過程解析

    Python本地及虛擬解釋器配置過程解析

    這篇文章主要介紹了Python本地及虛擬解釋器配置過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-10-10
  • PyTorch上實現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)CNN的方法

    PyTorch上實現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)CNN的方法

    本篇文章主要介紹了PyTorch上實現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)CNN的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • python實現(xiàn)凱撒密碼

    python實現(xiàn)凱撒密碼

    這篇文章主要為大家詳細介紹了python實現(xiàn)凱撒密碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • 打包python 加icon 去掉cmd黑窗口方法

    打包python 加icon 去掉cmd黑窗口方法

    今天小編就為大家分享一篇打包python 加icon 去掉cmd黑窗口方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06

最新評論