python中的 property作用

2021-10-02 02:56:20 字數 845 閱讀 2369

1、為什麼要使用property這個單詞

我們首先來分析一下為什麼但是龜哥會用property這個單詞,而不用foo,bar這樣的單詞呢,想必一定有他的想法。

通過谷歌翻譯查到,property的意思是屬性。

property ——> 屬性

雖然我們不能猜測出(當然我不提倡亂猜)它的具體意思,但是我們可能應該想到,被他修飾的應該和屬性的意思有些許聯絡的。

2、具體分析

我們知道人的身高和臂長大致呈1:1的關係,現在我們想通過乙個人的身高求得乙個人臂長,可以像下面的方法或得

方法一

其實臂長也可以算是我們屬性一部分,**person.arm_length()**這樣的獲取臂長的方式會不會覺得很彆扭呢(通過方法獲得乙個屬性值),下面我們來嘗試使用property來獲得

方法二

具體分析

我們是不是感覺方法二會更專業一些呢。其實,還有乙個原因就是,方法一中通過方法的形式獲取屬性,我們就會想,是方法就想這個方法需不需要引數的問題。顯然通過property很好的解決了這個問題,既然我們可以閱讀**時,一眼就能想到這是乙個屬性值(或者我們想要的值而已),還很好的避免的傳參的問題。

到這裡我們也大概明白了龜哥為什麼用property這個單詞了吧

3、使用property的注意點

被property修飾的方法只有乙個引數,self;

它必須要有返回值;

**:

JS中Attribute和property的區別

在使用angular中的資料繫結時,發現對html屬性和dom屬性不是很清楚,順便屢屢清楚這二者的區別。attribute html屬性,書寫在標籤內的屬性,使用setattribute 和getattribute 進行設定和獲取。property dom屬性,html標籤對應的dom節點屬性,使用...

Python 今天抽空學習了 Property

1 property使方法像屬性一樣呼叫 property可以把乙個例項方法變成其同名屬性,以支援.號訪問,它亦可標記設定限制,加以規範 2 property成為屬性函式,可以對屬性賦值時做必要的檢查,比如在setter方法裡加過濾判斷條件。3 顯得相對簡潔一些,相比自定義的get和set方法,pr...

python中 python中的 與

這一部分首先要理解python記憶體機制,python中萬物皆物件。對於不可變物件,改變了原來的值,其別名 變數名 繫結到了新值上面,id肯定會改變 對於可變物件,操作改變了值,id肯定會變,而 是本地操作,其值原地修改 對於 號操作,可變物件和不可變物件呼叫的都是 add 操作 對於 號操作,可變...