Python 訪問限制

2021-08-30 09:11:51 字數 701 閱讀 8984

內部屬性不被外部訪問,可以把屬性的名稱前加上兩個下劃線__,在python中,例項的變數名如果以__開頭,就變成了乙個私有變數(private),只有內部可以訪問,外部不能訪問

class student(object):

def __init__(self, name, score):

self.__name = name

self.__score = score

def print_score(self):

print '%s: %s' % (self.__name, self.__score)

改完後,對於外部**來說,沒什麼變動,但是已經無法從外部訪問例項變數.__name例項變數.__score了:

>>> bart = student('bart simpson', 98)

>>> bart.__name

traceback (most recent call last):

file "", line 1, in attributeerror: 'student' object has no attribute '__name'

這樣就確保了外部**不能隨意修改物件內部的狀態,這樣通過訪問限制的保護,**更加健壯。雙下劃線

python科技限制 python 訪問限制

class person object def run self print self.money print run def eat self,food print eat food def init self,name,age,height,weight,money self.name name...

Python訪問限制

我們可以給乙個例項繫結很多屬性,如果有些屬性不希望被外部訪問到怎麼辦?python對屬性許可權的控制是通過屬性名來實現的,如果乙個屬性由雙下劃線開頭 該屬性就無法被外部訪問。看例子 class person object def init self,name self.name name self....

python 訪問限制

class person object def init self,name,age,weight,height,money self.name name self.age age self.weight weight self.height height self.money money def ...