最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Python中的類,自我監(jiān)督(day7)

2023-06-02 23:45 作者:忠肝義膽董仲穎  | 我要投稿

今天學(xué)習(xí)的是Python的類。

學(xué)習(xí)大綱如下:

  1. 什么是類?

    類是編程中面向?qū)ο蟮囊粋€核心概念。它定義了一類具有相同特性的屬性或事件,用于創(chuàng)建具有相似行為和特征的對象。

    下面來做個比方。我是一名建筑設(shè)計師,我按照建筑相關(guān)標(biāo)準(zhǔn)和要求(Python中類的創(chuàng)建格式、屬性定義、方法定義的固定語句就類似這些標(biāo)準(zhǔn)),設(shè)計了一棟居民樓的建筑圖紙(這個就是類,類似于模板、藍(lán)圖),我的圖紙中說明了要用哪些材料(定義了類屬性)用多少號的鋼筋,多少號的水泥,樓層間距有多高,地基挖多深等等方法(定義了類方法)然后很多建筑公司都用我的圖紙蓋了居民樓(根據(jù)我圖紙蓋出來的居民樓,就是類對象)。

  2. 類的創(chuàng)建

    固定格式:

    class MyClass():

    ?????pass

    注意:給類取名字的時候首字母要大寫,這是通用范式,不大寫也不會報錯。

  3. 實例化對象:通過類可以創(chuàng)建對象,這個過程被稱為實例化。使用類名后面跟一對括號來實例化一個對象。

    obj = MyClass()? # 創(chuàng)建一個MyClass的實例對象

  4. 屬性:類的屬性是與類或?qū)ο笙嚓P(guān)聯(lián)的數(shù)據(jù)。它們存儲在類的命名空間中,并且可以在類的方法中訪問。

    class MyClass:
    ? ? def __init__(self, arg1, arg2):
    ? ? ? ? self.arg1 = arg1
    ? ? ? ? self.arg2 = arg2

    注:__init__ 這里是左右各兩個英文下劃線。

  5. 方法:類的方法是與類或?qū)ο笙嚓P(guān)聯(lián)的函數(shù)。它們定義了類的行為和功能。方法通過在類中定義函數(shù)來創(chuàng)建。

    class MyClass:
    ? ? def __init__(self, arg1, arg2):
    ? ? ? ? self.arg1 = arg1
    ? ? ? ? self.arg2 = arg2

    ????def method(self):

    ?????? ?print('hello world')

  6. self關(guān)鍵字:在類的方法中,self是一個特殊的參數(shù),表示對象本身。通過self可以訪問對象的屬性和調(diào)用其他方法。

  7. 繼承:繼承是面向?qū)ο缶幊痰闹匾拍?,允許創(chuàng)建一個新類,并從現(xiàn)有的類繼承屬性和方法。通過繼承,子類可以重用父類的代碼,并添加自己的特定功能。

class ChildClass(ParentClass):
? ? pass

????8.多態(tài):多態(tài)性是面向?qū)ο缶幊痰牧硪粋€重要概念。它允許不同的類具有相同的方法名稱,但其行為和實現(xiàn)方式可以不同。

class Dog:
? ? def sound(self):
? ? ? ? print("Woof!")

class Cat:
? ? def sound(self):
? ? ? ? print("Meow!")

animals = [Dog(), Cat()]
for animal in animals:
? ? animal.sound()? # 輸出:Woof! Meow!

9.封裝:封裝是將相關(guān)數(shù)據(jù)和方法組合在一起的機制。類可以將屬性和方法封裝在一起,并通過訪問控制機制來限制對它們的訪問。使用訪問修飾符(如public、private和protected)可以控制屬性和方法的可見性。

class MyClass:
? ? def __init__(self):
? ? ? ? self.public_attribute = "Public"? # 公共屬性
? ? ? ? self._protected_attribute = "Protected"? # 受保護(hù)屬性
? ? ? ? self.__private_attribute = "Private"? # 私有屬性

obj = MyClass()
print(obj.public_attribute)? # 訪問公共屬性
print(obj._protected_attribute)? # 訪問受保護(hù)屬性(約定上的規(guī)范,實際上仍可訪問)
print(obj.__private_attribute)? # 報錯,無法訪問私有屬性

10.方法重寫:在子類中可以重寫繼承自父類的方法,以實現(xiàn)自己特定的行為。通過在子類中定義與父類同名的方法,子類可以覆蓋父類的方法實現(xiàn)。

class ParentClass:
? ? def method(self):
? ? ? ? print("Parent method")

class ChildClass(ParentClass):
? ? def method(self):
? ? ? ? print("Child method")

obj = ChildClass()
obj.method()? # 輸出:Child method



Python中的類,自我監(jiān)督(day7)的評論 (共 條)

分享到微博請遵守國家法律
汾阳市| 泰顺县| 永春县| 监利县| 洪泽县| 吉安县| 沽源县| 阿坝县| 茶陵县| 墨竹工卡县| 固安县| 花莲市| 抚松县| 玉树县| 板桥市| 武功县| 博野县| 瓦房店市| 尼木县| 水城县| 建始县| 无为县| 逊克县| 万安县| 高清| 信阳市| 富平县| 迁西县| 涟水县| 中卫市| 庆安县| 五寨县| 大名县| 乌鲁木齐县| 万源市| 松阳县| 巴里| 会理县| 莱芜市| 罗平县| 合肥市|