Python對於私有化的處理

Python語言並不直接支持私有方式,需要程序員自己把握在外部進行特性修改的時機。讓方法或者特性變成私有,可以在其名字前加上雙下劃線
class Secretive:
    def __inaccessible(self):
        print('Bet you can\'t see me...')
        
    def accessible(self):
        print('The secret message is: ')
        self.__inaccessible()

此時,從外界對該方法無法直接訪問,但在類中的其它方法或者特性仍然可以訪問。

Python私有化

在類的內部定義中,所有雙下劃線開始的名字被翻譯成前面加上單下劃線和類名的形式, 即要訪問s.__inaccessible()可以使用s._Secretive__inaccessible()

Python私有化2

注: 當不需要使用這種方法但是又想讓其它對象不要訪問內部數據,可以使用單下劃線,前面帶有下劃線的名字都不會被帶星號的import語句導入

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章