Python 9-5(不知道多少周了)——給創建的類中屬性指定默認值

? ? ? ? ?盡管看了一遍書本,時隔倆月也是心有余而力不足,全然無感、頭腦空白,重頭開始。先補課,在回顧往期內容吧!

? ? ? ? 今天的內容是為創建的類中屬性指定默認的值,可以從代碼看出,為屬性賦默認值,不一定要在__init__中指定形參。

? ? ? ? 類的第一次純手工輸入就出錯了,顯示類型錯誤,在創建Car類的實例時,顯示參數并未傳遞給定義的類。百思不得其解只好求助戰友,發現原來是init這個函數的下劃線是雙下劃線而不是單下劃線。看書看了那些,這樣的細節沒注意,改之。

? ? ? ?憑著頭腦中的印象又把代碼重新敲擊一遍,再次運行發現還是不對,顯示全局變量long_name并未被定義,肯定是定義描述性信息時出了錯。看源代碼,原來是返回函數值時并不需要給屬性重新賦值,直接定義變量并賦值即可。

修改后終于運行出了創建實例后預期的結果。

總結:

1、__init__是類中的特殊方法(類中的函數稱為方法),開頭和末尾有兩條下劃線,為的是區別類中一般的方法命名;

2、在類中給屬性指定默認值時不需要設定專門的形參;且在方法__init__中;

3、類中的方法返回值時,不需要給屬性賦值,直接定義變量并返回值即可。

4、方法或函數中的文檔字符串注釋也是代碼的一部分,清晰準確的注釋必不可少。


最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容