在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python中的類和對(duì)象詳解

網(wǎng)絡(luò)技術(shù)干貨圈 ? 來(lái)源:網(wǎng)絡(luò)技術(shù)干貨圈 ? 2023-04-20 16:53 ? 次閱讀

Python 是一種面向?qū)ο蟮?a target="_blank">編程語(yǔ)言,它支持類和對(duì)象。類是一種用戶自定義的數(shù)據(jù)類型,用于定義對(duì)象的屬性和方法。對(duì)象是類的實(shí)例,它包含類的屬性和方法的實(shí)際值。

定義類

定義類的語(yǔ)法如下:

classClassName:
def__init__(self,arg1,arg2,...):
self.attribute1=arg1
self.attribute2=arg2
...

defmethod1(self,arg1,arg2,...):
#methodbody

defmethod2(self,arg1,arg2,...):
#methodbody

在上面的代碼中,__init__() 方法是類的構(gòu)造函數(shù),它在創(chuàng)建對(duì)象時(shí)調(diào)用。self 參數(shù)是一個(gè)指向當(dāng)前對(duì)象的引用,它用于訪問(wèn)對(duì)象的屬性和方法。

創(chuàng)建對(duì)象

要?jiǎng)?chuàng)建一個(gè)對(duì)象,我們必須使用類的名稱和構(gòu)造函數(shù)的參數(shù)。例如:

classPerson:
def__init__(self,name,age):
self.name=name
self.age=age

person1=Person("John",25)

在上面的代碼中,我們定義了一個(gè)名為 Person 的類,并創(chuàng)建了一個(gè)名為 person1 的對(duì)象。這個(gè)對(duì)象有兩個(gè)屬性:name 和 age。

訪問(wèn)屬性和方法

要訪問(wèn)對(duì)象的屬性和方法,我們可以使用點(diǎn)操作符(.)。

print(person1.name)
print(person1.age)

在上面的代碼中,我們?cè)L問(wèn)了 person1 對(duì)象的 name 和 age 屬性。

要調(diào)用對(duì)象的方法,我們可以使用點(diǎn)操作符和方法名。

classPerson:
def__init__(self,name,age):
self.name=name
self.age=age

defsay_hello(self):
print("Hello,mynameis",self.name)

person1=Person("John",25)
person1.say_hello()

在上面的代碼中,我們定義了一個(gè)名為 say_hello() 的方法,并在 person1 對(duì)象上調(diào)用它。

繼承

Python 支持繼承,它允許我們定義一個(gè)類來(lái)繼承另一個(gè)類的屬性和方法。

classAnimal:
def__init__(self,name):
self.name=name

defspeak(self):
pass

classDog(Animal):
defspeak(self):
print("Woof!")

classCat(Animal):
defspeak(self):
print("Meow!")

dog1=Dog("Rex")
cat1=Cat("Whiskers")

dog1.speak()
cat1.speak()

在上面的代碼中,我們定義了一個(gè)名為 Animal 的類,并創(chuàng)建了兩個(gè)名為 Dog 和 Cat 的子類。這些子類繼承了 Animal 類的屬性和方法,并覆蓋了 speak() 方法。

多態(tài)性

多態(tài)性是面向?qū)ο缶幊讨械囊粋€(gè)概念,它允許我們使用相同的方法名調(diào)用不同類的方法。這樣,我們可以編寫(xiě)通用的代碼來(lái)處理不同的對(duì)象類型。

在 Python 中,多態(tài)性是通過(guò)繼承和方法覆蓋來(lái)實(shí)現(xiàn)的。當(dāng)我們調(diào)用一個(gè)方法時(shí),Python 解釋器會(huì)在對(duì)象的類和其父類中查找該方法,直到找到為止。

classAnimal:
def__init__(self,name):
self.name=name

defspeak(self):
pass

classDog(Animal):
defspeak(self):
print("Woof!")

classCat(Animal):
defspeak(self):
print("Meow!")

defmake_animal_speak(animal):
animal.speak()

dog1=Dog("Rex")
cat1=Cat("Whiskers")

make_animal_speak(dog1)
make_animal_speak(cat1)

在上面的代碼中,我們定義了一個(gè)名為 make_animal_speak() 的函數(shù),它接受一個(gè) Animal 類型的參數(shù),并調(diào)用該參數(shù)的 speak() 方法。然后,我們創(chuàng)建了一個(gè) Dog 類型的對(duì)象和一個(gè) Cat 類型的對(duì)象,并將它們作為參數(shù)傳遞給 make_animal_speak() 函數(shù)。

封裝

封裝是面向?qū)ο缶幊讨械牧硪粋€(gè)概念,它允許我們將對(duì)象的內(nèi)部狀態(tài)隱藏起來(lái),只公開(kāi)必要的接口來(lái)訪問(wèn)它。在 Python 中,封裝是通過(guò)屬性和方法的訪問(wèn)控制來(lái)實(shí)現(xiàn)的。

在 Python 中,屬性和方法的訪問(wèn)控制是通過(guò)屬性和方法的名稱前綴來(lái)實(shí)現(xiàn)的。如果屬性或方法的名稱以兩個(gè)下劃線開(kāi)頭(__),則它是私有的,否則它是公共的。

classPerson:
def__init__(self,name,age):
self.__name=name
self.__age=age

defget_name(self):
returnself.__name

defset_name(self,name):
self.__name=name

defget_age(self):
returnself.__age

defset_age(self,age):
self.__age=age

person1=Person("John",25)
print(person1.get_name())
person1.set_name("Mike")
print(person1.get_name())

在上面的代碼中,我們定義了一個(gè)名為 Person 的類,并將 name 和 age 屬性設(shè)置為私有的。然后,我們定義了四個(gè)公共方法來(lái)訪問(wèn)和修改這些屬性。

總結(jié)

Python 類和對(duì)象是面向?qū)ο缶幊痰幕靖拍睢Mㄟ^(guò)定義類和創(chuàng)建對(duì)象,我們可以組織代碼并實(shí)現(xiàn)封裝、繼承和多態(tài)性。了解這些概念對(duì)于編寫(xiě)高質(zhì)量的 Python 代碼非常重要。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 編程語(yǔ)言
    +關(guān)注

    關(guān)注

    10

    文章

    1945

    瀏覽量

    34736
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4331

    瀏覽量

    62618
  • 對(duì)象
    +關(guān)注

    關(guān)注

    1

    文章

    38

    瀏覽量

    17390
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4797

    瀏覽量

    84689
  • 解釋器
    +關(guān)注

    關(guān)注

    0

    文章

    103

    瀏覽量

    6513

原文標(biāo)題:網(wǎng)絡(luò)工程師學(xué)Python-12-類和對(duì)象

文章出處:【微信號(hào):網(wǎng)絡(luò)技術(shù)干貨圈,微信公眾號(hào):網(wǎng)絡(luò)技術(shù)干貨圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Python的面向對(duì)象編程詳解

    一般編程可分為面向過(guò)程編程,和面向對(duì)象編程。Python的面向對(duì)象編程,與Java的面向對(duì)象很像。之所以需要面向對(duì)象編程,是為了更好地實(shí)現(xiàn)封
    發(fā)表于 09-04 16:35 ?568次閱讀
    <b class='flag-5'>Python</b>的面向<b class='flag-5'>對(duì)象</b>編程<b class='flag-5'>詳解</b>

    3分鐘看懂Python面向對(duì)象

    Python雖然是解釋型語(yǔ)言,但從設(shè)計(jì)之初就已經(jīng)是一門面向對(duì)象的語(yǔ)言,對(duì)于Python來(lái)說(shuō)一切皆為對(duì)象。正因?yàn)槿绱耍?b class='flag-5'>Python
    發(fā)表于 06-08 14:20

    python的理解與使用

    python的理解與使用1. 通俗理解(英文名 class),是具有相同特性(屬性)和行為(方法)的對(duì)象(實(shí)例)的抽象模板。從定義上來(lái)
    發(fā)表于 03-07 16:51

    python的多態(tài)和的property屬性

    是鴨子。套入剛剛的代碼實(shí)例,就是一個(gè)對(duì)象,只要有 speak 方法,那么他就是一個(gè) do_speak 方法所需要的 people 對(duì)象的 property 屬性在之前的學(xué)習(xí)
    發(fā)表于 03-09 16:38

    python開(kāi)發(fā)之‘’講解

    Python 在盡可能不增加新的語(yǔ)法和語(yǔ)義的情況下加入了機(jī)制。這種機(jī)制是 C++ 和 Modula-3 的混合。 Python沒(méi)有在
    發(fā)表于 03-15 14:12 ?1次下載

    揭開(kāi)Pythonself的神秘面紗

    許多python初學(xué)者,在接觸到python面向對(duì)象的時(shí)候,就被包含的方法的self打敗了
    的頭像 發(fā)表于 01-19 17:51 ?1785次閱讀
    揭開(kāi)<b class='flag-5'>Python</b><b class='flag-5'>類</b><b class='flag-5'>中</b>self的神秘面紗

    詳談Python的數(shù)據(jù)模型和對(duì)象模型

    Python官方文檔說(shuō)法是“Python數(shù)據(jù)模型”,大多數(shù)Python書(shū)籍作者說(shuō)法是“Python對(duì)象模型”,它們是一個(gè)意思,表示“計(jì)算機(jī)編
    的頭像 發(fā)表于 02-10 15:59 ?2554次閱讀
    詳談<b class='flag-5'>Python</b>的數(shù)據(jù)模型和<b class='flag-5'>對(duì)象</b>模型

    python迭代器詳解

    ,可能需要借助一些函數(shù)來(lái)判別,比如 Python 內(nèi)置的 collections.abc 模塊,這個(gè)模塊只有在 Python 才有噢,在這個(gè)模塊中提供了一個(gè) Iterable ,可
    的頭像 發(fā)表于 02-24 15:42 ?1338次閱讀

    python的繼承詳解

    python的繼承 的繼承,跟人類繁衍的關(guān)系相似。 被繼承的稱為基(也叫做父),繼承而
    的頭像 發(fā)表于 03-08 16:40 ?3102次閱讀

    Python的屬性和方法是什么

    編程我們用來(lái)創(chuàng)建對(duì)象。日常生活的汽車設(shè)計(jì)圖就是我們Python
    的頭像 發(fā)表于 02-23 10:17 ?880次閱讀

    什么是python對(duì)象

    Python,type函數(shù)查看數(shù)據(jù)類型
    的頭像 發(fā)表于 02-23 10:18 ?768次閱讀

    Python的繼承詳解

    Python ,繼承是一種重要的面向對(duì)象編程概念。通過(guò)繼承,我們可以定義一個(gè)新的,它繼承了現(xiàn)有的屬性和方法。這種代碼重用可以使我們
    的頭像 發(fā)表于 04-20 16:56 ?1298次閱讀

    [源代碼]Python算法詳解

    [源代碼]Python算法詳解[源代碼]Python算法詳解
    發(fā)表于 06-06 17:50 ?0次下載

    Python中元的作用

    1.什么是 在理解元之前,我們必須先掌握Python(class)。 和大多數(shù)語(yǔ)言一樣,Pyt
    的頭像 發(fā)表于 11-02 11:18 ?534次閱讀
    <b class='flag-5'>Python</b>中元<b class='flag-5'>類</b>的作用

    pythonopen函數(shù)的用法詳解

    pythonopen函數(shù)的用法詳解 Python的open()函數(shù)用于打開(kāi)文件。它接受文件名和模式作為參數(shù),并返回一個(gè)文件
    的頭像 發(fā)表于 01-30 15:31 ?2126次閱讀
    主站蜘蛛池模板: 日本亚洲精品色婷婷在线影院 | 亚洲国产情侣偷自在线二页| 日日噜噜夜夜狠狠tv视频免费 | 国内精品网站| 精品国产自在现线看久久 | 久久夜色撩人精品国产| 天天综合色天天桴色| 69pao强力打造在线| 色色色色网站| 永久免费在线播放| 中文字幕亚洲一区二区v@在线| 特黄毛片| 夜夜爽夜夜爽| 最新亚洲情黄在线网站| 色老头一区二区三区在线观看| 永久免费看| 一区二区不卡视频| 日本免费精品视频| 天天爱夜夜| 国产99热| 啪一啪日一日| 婷婷久久综合| 69成人免费视频| 成年人啪啪网站| 色www永久免费| 天天爽爽| 国产精品久久久久久久久免费观看 | 67pao强力打造高清免费| 日韩美女三级| 日本加勒比高清一本大道| 欧美爱爱帝国综合社区| 久久久免费| 五月综合色啪| 日本国产高清色www视频在线| 久久久久久久综合| 国产色啪午夜免费视频| 午夜免费福利片| 亚洲精品久久久久午夜福| 日本一区二区三区不卡在线看| 久久成人国产精品青青| 啪啪.com|