請利用@property
給乙個screen
物件加上width
和height
屬性,以及乙個唯讀屬性resolution
:
class screen(object):
@property
def width(self):
return self._width
@width.setter
def width(self,value):
self._width = value
@property
def height(self):
return self._height
@height.setter
def height(self,value):
self._height = value
@property
def resolution(self):
return self._width * self._height
1、當執行如下語句:
s = screen()
s.width
python會在s的__dict__
中查詢key值為width的value,因此s.width
在內部就變成了s.__dict__['width']
2、下劃線『_』的理解:下劃線在python中表明該變數是private型別
3、不加下換線報錯的問題:recursionerror: maximum recursion depth exceeded
@property
def height(self):
return self.height
該函式會遞迴的呼叫自己,造成死迴圈 python教學筆記 python學習筆記(一)
1.eval 函式 eval是單詞evaluate的縮寫,就是 求.的值的意思。eval 函式的作用是把str轉換成list,dict,tuple.li 1 1,2,3 print eval li 1 di 1 print eval di 1 tu 1 2,4,6 print eval tu 1 執...
python學習筆記
coding utf 8 coding utf 8 應該像八股文一樣在每個指令碼的頭部宣告,這是個忠告 為了解決中文相容問題,同時你應該選擇支援 unicode 編碼的編輯器環境,保證在執行指令碼中的每個漢字都是使用 utf 8 編碼過的。cdays 5 exercise 3.py 求0 100之間...
Python 學習筆記
python 學習筆記 def run print running.def execute method method execute run result running.condition false test yes,is true if condition else no,is false ...