Python類訪問限制

2021-08-28 18:28:33 字數 857 閱讀 7203

如果要讓內部屬性不被外部訪問,可以把屬性的名稱前加上兩個下劃線__,在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))

bart = student('bart simpson', 59)

bart.__name

attributeerror: 'student' object has no attribute '__name'
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))

def get_name(self):

return self.__name

bart = student('bart simpson', 59)

print(bart.get_name())

bart simpson

Python「類」之訪問限制

要讓內部屬性或者方法不被外部訪問,可以把在屬性或者方法的名稱前加上單下劃線 或者在前面加雙下劃線 或者兩邊加雙下劃線。其中,在前面和後面都加雙下劃線的是系統的方法,比如 init 方法。在前面加乙個下劃線的表示保護型別的成員,對於這樣的屬性和方法,只允許類本身和子類可以訪問。例如 class swa...

類 訪問限制

練習 請把下面的student物件的gender欄位對外隱藏起來,用get gender 和set gender 代替,並檢查引數有效性 coding utf 8 class student object def init self,name,gender self.name name self.g...

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...