python3的getter方法setter方法以及property修飾

class Dog:
    def __init__(self,name,age):
        self.__name = name
        self.__age = age
    @property
    def age(self):
        return self.__age
    @age.setter
    def age(self,age):
        self.__age = age
    @property
    def name(self):
        return self.__name
    @name.setter
    def name(self,name):
        self.__name = name

d = Dog('天道',20)
d.name = '修羅道'
d.age = 50
print(d.name,d.age)

列表.sort() 字符串默認按unicode碼排序
可接收一個參數key,例如:sort(key=len) 按長度排序
參數key的值爲數值類型的時候,表示該列表所有值都轉換爲該類型,再進行比較
sorted(排序的列表,key=類型) 用法和sort基本一直,但可以對任意序列進行排序,並且不會影響原來的對象,而是返回一個新對象br/>函數作爲返回值返回,也是一種高階函數,這種高階函數,也稱爲閉包
閉包要件:
1、函數嵌套
2、將內部函數作爲返回值返回
3、內部函數必須要使用到外部函數的變量
裝飾器:
方法名上一行用@裝飾器對象,不能寫方法名加()
對象:
對象是內存中專門用來存儲數據的一塊區域
對象中可以存放各種數據(數字、布爾值、代碼)
對象由三部分組成:
對象的標識(id)
對象的類型(type)
對象的值(value)
類命名規則:
1.首字母大寫

isinstance(實例對象,類對象) 檢查一個對象是否是一個類的實例
對象名.屬性名 = 屬性值 給對象裏添加屬性
定義對象的方法時,至少需要定義一個self形參
調用一個對象時,解析器會先在當前對象中尋找是否含有該屬性,如果有,則直接返回當前的對象屬性值,如果沒有,則去當前對象的類對象中去尋找,如果有則返回類對象的屬性值,還沒有則報錯
封裝是面向對象的三大特性之一
封裝指隱藏對象中一些不希望被外部訪問到的屬性或方法
對象屬性名 隱藏屬性,不能通過對象訪問,在屬性被修飾時,python會自動爲屬性改名:_類名__屬性名,通過_類名__屬性名可以訪問
_對象屬性名 私有化屬性,類內部可訪問br/>getter方法上面加了@property後,可以像調用屬性一樣,調用方法,被property修飾的方法,方法名必須和屬性名一致
setter方法的裝飾器:@屬性名.setter
getter方法必須寫在setter上面

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