成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

怎么定義Python面向?qū)ο?/h1>

本篇內(nèi)容介紹了“怎么定義Python面向?qū)ο蟆钡挠嘘P(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

成都創(chuàng)新互聯(lián)長期為上千客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為玉州企業(yè)提供專業(yè)的做網(wǎng)站、成都網(wǎng)站設(shè)計玉州網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

面向?qū)ο?/p>

  • 類 - class

  • 對象

class Student(): #定義一個類
 name = '' #定義變量
 age = 0
 def print_file(self): #定義一個方法
 print("name:"+self.name)
 print('age:'+str(self.age)) #輸出
student =Student() #實例化一個對象
student.print_file() #調(diào)用方法

【注】:self 在每個方法括號中都必須寫上,這個相當(dāng)于java中的 this 關(guān)鍵字。

但 self按嚴(yán)格來說它不是python的關(guān)鍵字,self可以是任何符合的字符串,只是python官方推薦使用 self 而已

類與對象:類像一個模板一樣,可以產(chǎn)生各種各樣的對象

  • 構(gòu)造函數(shù)

 def __init__(self,name): #構(gòu)造函數(shù)
 self.name=name
 self.source= 0
 print(name) #調(diào)用實例變量 方式1
 print(self.name) #調(diào)用實例變量 方式2
 print(self.__class__.name)#調(diào)用類變量 方式1

部分特性和java差不多

類變量和實例變量

實例變量:通過實例對象調(diào)用的變量和在構(gòu)造函數(shù)中定義過的 如上述構(gòu)造函數(shù)類代碼

print(name) #調(diào)用實例變量 方式1
print(self.name) #調(diào)用實例變量 方式2

類變量:通過類名直接調(diào)用的,或者在實例函數(shù)中使用 self.class.變量名調(diào)用的 如上述代碼

print(self.__class__.name) #調(diào)用類變量 方式1
Student.name #調(diào)用類變量 方式2

方法

實例方法

就是一般的定義方法,關(guān)聯(lián)實例對象

def show(self):
	pass

【注】:關(guān)鍵字 pass 相當(dāng)于一個占位 在還沒想好邏輯的時候可以使用它 反正代碼報錯

類方法

方法上使用裝飾器 @classmethod 以及必傳參數(shù) cls

#類方法
@classmethod 
def plus_sum(cls):
 cls.sum +=1 
 print(cls.sum) #調(diào)用類變量

【注】: cls 字符串 和self的作用差不多,只是只能用在類方法上

在類方法中調(diào)用類變量的方式與實例方法不同

self.__calss__.name #實例方法調(diào)用類變量
cls.name #類方法調(diào)用類變量

靜態(tài)方法

方法上使用裝飾器 @staticmethod,和類方法的區(qū)別就是不用傳cls,一般不推薦使用

 #靜態(tài)方法
 @staticmethod 
 def plus_sum():
 pass

要點:一般保證數(shù)據(jù)的安全不能直接給數(shù)據(jù)賦值,要在方法中進行完成,方法中可以進行判斷,體現(xiàn)了python的面向?qū)ο蟮姆庋b性

私有

私有方法

在方法前面加 ‘__’ 雙下劃線

def __sum(self):
	pass

私有方法外部強行調(diào)用會報錯

私有變量

在變量前面加 ‘__’ 雙下劃線

__name = '小米'

無法進行私有變量調(diào)用,

student = Student() #實例化
print(student.__name)

因為python的動態(tài)機制,這里其實是重新定義了一個變量 __name

可以使用 _dict _ 來查看當(dāng)前對象的所以變量信息

print(student.__dict__) #輸出詳細

可以從輸出的內(nèi)容中可以看到,原來的變量變成了 類名加變量名 如:_Student__name

面向?qū)ο?繼承

python的繼承特性和java的繼承特性差不多,相信有java繼承的會更好的理解

父類

#父類 2019-8-28
class Human():
 sum = 0
 def __init__(self,name,age):
 self.name=name
 self.age=age
 def show(self):
 print("父類的方法")

子類

from m4 import Human #導(dǎo)入父類 m4為文件名 Human為類名
class Student(Human): #繼承父類
 
 def __init__(self,school,name,age):
 self.school=school
 
 #調(diào)用父類的構(gòu)造函數(shù) 需要加入self 方式一
 Human.__init__(self,name,age)
 #方式二 使用super關(guān)鍵字
 super(Student,self).__init__(name,age)
 
 def out(self):
 #調(diào)用父類方法
 super(Student,self).show()
 print("加油")
ss = Student('社會','44',5)
print(ss.name)
print(ss.age)
ss.out()

調(diào)用父類的兩種方式

方式一

 #調(diào)用父類的構(gòu)造函數(shù) 需要加入self 方式一
 Human.__init__(self,name,age)

方式二

使用關(guān)鍵字 super

#方式二 使用super關(guān)鍵字
super(Student,self).__init__(name,age)

“怎么定義Python面向?qū)ο蟆钡膬?nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

本文題目:怎么定義Python面向?qū)ο?/a>
分享URL:
http://jinyejixie.com/article28/gggojp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、軟件開發(fā)、ChatGPT、網(wǎng)站制作響應(yīng)式網(wǎng)站、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管
拉孜县| 武陟县| 眉山市| 清镇市| 团风县| 湘西| 孟津县| 阿巴嘎旗| 呼图壁县| 土默特左旗| 庄河市| 武安市| 正定县| 皮山县| 塘沽区| 宁强县| 双桥区| 扶沟县| 朔州市| 佛教| 文山县| 资中县| 嘉鱼县| 环江| 贺兰县| 平武县| 云林县| 荆门市| 新乐市| 安乡县| 略阳县| 克什克腾旗| 金阳县| 喀喇沁旗| 洱源县| 公主岭市| 马山县| 水城县| 新竹市| 伊吾县| 宾川县|