一級(jí)標(biāo)題
二級(jí)標(biāo)題
五級(jí)標(biāo)題
- 列表第一項(xiàng)
- 列表第二項(xiàng)
- 有序列表第一項(xiàng)
- 有序列表第二項(xiàng)
標(biāo)題
斜體
粗體
引用段落
代碼塊
類的定義
-和普通的函數(shù)相比,在類中定義的函數(shù)只有一點(diǎn)不同,就是第一個(gè)參數(shù)永遠(yuǎn)是實(shí)例變量self,并且,調(diào)用時(shí),不用傳遞該參數(shù)。
-如果要讓內(nèi)部屬性不被外部訪問(wèn),可以把屬性的名稱前加上兩個(gè)下劃線,在Python中,實(shí)例的變量名如果以開(kāi)頭,就變成了一個(gè)私有變量(private),只有內(nèi)部可以訪問(wèn),外部不能訪問(wèn)
-,在Python中,變量名類似xxx的,也就是以雙下劃線開(kāi)頭,并且以雙下劃線結(jié)尾的,是特殊變量,特殊變量是可以直接訪問(wèn)的,不是private變量,所以,不能用name、score這樣的變量名。
請(qǐng)把下面的Student對(duì)象的gender字段對(duì)外隱藏起來(lái),用get_gender()和set_gender()代替,并檢查參數(shù)有效性:
'''
class Student(object):
def init(self, name, gender):
self.name = name
self.__gender = gender
def get_gender(self):
return self.__gender
def set_gender(self,gender):
if gender =='male'or gender=='female':
self.__gender=gender
else:
raise ValueError('unknow gender!!!')
'''
測(cè)試
'''
bart = Student('Bart', 'male')
if bart.get_gender() != 'male':
print('測(cè)試失敗!')
else:
bart.set_gender('female')
if bart.get_gender() != 'female':
print('測(cè)試失敗!')
else:
print('測(cè)試成功!')
'''