python中私有函數(shù)調(diào)用方法解密
本文實例講述了python中私有函數(shù)調(diào)用方法。分享給大家供大家參考,具體如下:
與大多數(shù)語言一樣,Python 也有私有的概念:
① 私有函數(shù)不可以從它們的模塊外面被調(diào)用
② 私有類方法不能夠從它們的類外面被調(diào)用
③ 私有屬性不能夠從它們的類外面被訪問
與大多數(shù)的語言不同,一個 Python 函數(shù),方法,或?qū)傩允撬接羞€是公有,完全取決于它的名字。
如果一個 Python 函數(shù),類方法,或?qū)傩缘拿忠詢蓚€下劃線開始(但不是結(jié)束),它是私有的;其它所有的都是公有的。 Python 沒有類方法 保護 的概念(只能用于它們自已的類和子類中)。類方法或者是私有(只能在它們自已的類中使用)或者是公有(任何地方都可使用)。
在 Python 中,所有的專用方法和內(nèi)置屬性遵守一個標準的命名習慣:開始和結(jié)束都有兩個下劃線。不要對你自已的方法和屬性用這種方法命名;到后面,它只會把你(或其它人)搞亂。 私有方法由于某種原因而私有,但是象其它很多在 Python 中的東西一樣,它們的私有化基本上是習慣問題,而不是強迫的。
注意,盡管我們不應(yīng)該從類的外部訪問類的私有方法,但實際上我們是可以訪問的。類的私有方法的名字實際上都被“翻譯”成前面加上單下劃線和類名的形式。看下面的代碼就會明白了。
>>> class A: def __privatefun(self): print('this is private function') >>> a._A__privatefun() this is private function
看到?jīng)]有!我們從類的外部調(diào)用了類的私有方法!這是一個很有意思的技巧,但是切記我們不應(yīng)該這樣使用。
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設(shè)計有所幫助。
相關(guān)文章
Python程序打包工具py2exe和PyInstaller詳解
這篇文章主要介紹了Python程序打包工具py2exe和PyInstaller詳解,如果可以提前將程序打包成 Windows平臺的 .exe 文件或者是Linux下的 .sh 腳本,那么使用起來就會方便很多,需要的朋友可以參考下2019-06-06Django使用詳解:ORM 的反向查找(related_name)
今天小編就為大家分享一篇Django使用詳解:ORM 的反向查找(related_name),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05