溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中使用私有方法需要注意什么

發(fā)布時間:2021-05-10 10:07:46 來源:億速云 閱讀:142 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關python中使用私有方法需要注意什么,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

python的五大特點是什么

python的五大特點:1.簡單易學,開發(fā)程序時,專注的是解決問題,而不是搞明白語言本身。2.面向?qū)ο?,與其他主要的語言如C++和Java相比, Python以一種非常強大又簡單的方式實現(xiàn)面向?qū)ο缶幊獭?.可移植性,Python程序無需修改就可以在各種平臺上運行。4.解釋性,Python語言寫的程序不需要編譯成二進制代碼,可以直接從源代碼運行程序。5.開源,Python是 FLOSS(自由/開放源碼軟件)之一。

1、使用注意

單下劃線的方法只是開發(fā)者之間的約定,解釋器不做任何改變。

雙下化下的方法,是私有方法,解釋器會改名,改名策略和私有變量相同,【_類名__方法名】。方法變量都在類的【__dict__】中可以找到。

2、實例

class Myclass:
 
    def __init__(self,name,age=18):
        self.name = name
        self._age = age
 
    def __getname(self):
        return self.name
 
    def __getage(self):
        return self.name
 
a = Myclass("tom")
#print(a.__getname())    #   AttributeError: 'Myclass' object has no attribute '__getname'
#print(a.__getage())     #   AttributeError: 'Myclass' object has no attribute '__getage'
 
print(a.__dict__)   #   {'name': 'tom', '_age': 18}
print(a.__class__.__dict__)     #   {'__module__': '__main__', '__init__': <function Myclass.__init__ at 0x01ABC468>, '_Myclass__getname': <function Myclass.__getname at 0x01B06150>, '_Myclass__getage': <function Myclass.__getage at 0x01B064B0>, '__dict__': <attribute '__dict__' of 'Myclass' objects>, '__weakref__': <attribute '__weakref__' of 'Myclass' objects>, '__doc__': None}
print(a._Myclass__getname())    #   tom

關于“python中使用私有方法需要注意什么”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI