Python中__init__的理解 - IT人

文章推薦指數: 80 %
投票人數:10人

而__init__函式(方法)支援帶引數類的初始化,也可為宣告該類的屬性(類中的變數)。

__init__函式(方法)的第一個引數必須為self,後續引數為自己定義。

Togglenavigation IT人 IT人 Python中__init__的理解 有夢想有行動發表於 2020-10-17 Python 在Python中定義類經常會用到__init__函式(方法),首先需要理解的是,兩個下劃線開頭的函式是宣告該屬性為私有,不能在類的外部被使用或訪問。

而__init__函式(方法)支援帶引數類的初始化,也可為宣告該類的屬性(類中的變數)。

__init__函式(方法)的第一個引數必須為self,後續引數為自己定義。

例如我們定義一個Box類,有width,height,depth三個屬性,以及計算體積的方法:從文字理解比較困難,通過下面的例子能非常容易理解這個概念: #!/usr/bin/python #-*-codingutf-8-*- #CreatedbyLuZhan classBox: defsetDimension(self,width,height,depth): self.width=width self.height=height self.depth=depth defgetVolume(self): returnself.width*self.height*self.depth b=Box() b.setDimension(10,20,30) print(b.getVolume()) 我們在Box類中定義了setDimension方法去設定該Box的屬性,這樣過於繁瑣,而用__init__()這個特殊的方法就可以方便地自己對類的屬性進行定義,init()方法又被稱為構造器(constructor)。

#!/usr/bin/python #-*-codingutf-8-*- #CreatedbyLuZhan classBox: #defsetDimension(self,width,height,depth): #self.width=width #self.height=height #self.depth=depth def__init__(self,width,height,depth): self.width=width self.height=height self.depth=depth defgetVolume(self): returnself.width*self.height*self.depth b=Box(10,20,30) print(b.getVolume()) 相關文章 用python和計算機對話(計算機的語句) 2020-11-21 Python Python設定常量不可修改的辦法 2020-11-21 Python 【Python】字典的setdefault()方法 2020-11-21 Python python判斷一個表示式是什麼布林型別bool() 2020-11-21 Python PythonMixin解釋 2020-11-21 Python python讀取txt文字資料進行分詞並生成詞雲圖片 2020-11-21 Python python之對元組的初步瞭解 2020-11-21 Python Python+selenium實現Drcom校園網自動檢測網路以及自動登入 2020-11-21 Python python非同步佇列爬取多個網站 2020-11-21 Python 基於GoogleearthenginepythonAPI做基於影像的定量反演——步驟及問題總結 2020-11-21 Python pythonasciiint互換 2020-11-21 Python python的pip快速安裝程式碼 2020-11-22 Python 【數字影像處理6】python+opencv使用LBP、HOG提取特徵來分類人臉【更新中】 2020-11-22 PythonOpenCV Python字典實現原理 2020-11-22 Python python爬取飄花電影下載地址 2020-11-22 Python Python-input函式 2020-11-22 Python python呼叫yolov3的小錯誤 2020-11-22 Python pythonany,call,init,下劃線知識彙總 2020-11-22 Python 如何自定義python語法. 2020-11-22 Python 小白不懂就問,學自動化測試,會Java可以嗎,還是必須得會python(python不太會) 2020-11-22 PythonJava自動化測試 最新文章 CMR:印度手機遊戲調查報告 大咖說·圖書分享|HaaS物聯網裝置雲端一體開發框架 話實踐,行實幹,成實事:“巡禮”數字化的中國大地 構建安全程式碼防止供應鏈攻擊 【推薦閱讀】超有用的漏洞掃描工具合集! 國密SM演算法有哪些? 為什麼伺服器選擇Linux系統 ApacheFlinkML2.1.0釋出公告 乾貨|作為前端開發者如何邁向獨立開發者 助力開發者,全方位解讀APISIX測試案例 得物資料庫中介軟體平臺“彩虹橋”演進之路 KubeSphere3.3.0離線安裝教程



請為這篇文章評分?