• 當前位置:首頁 > IT技術 > 編程語言 > 正文

    Python類和對象、模塊
    2022-03-06 18:00:19

    對象的理解

    Python類和對象、模塊_封裝

    Python類和對象、模塊_父類_02

    對象的特征

    Python類和對象、模塊_父類_03

    封裝

    信息隱蔽技術,例如BIF功能List我們可以執行append、sort等,但是我們不知道里面實現的邏輯,這叫做封裝

    繼承

    子類自動共享父類之間數據和方法的機制,如果子類中定義父類同名的方法或屬性,則會自動覆蓋父類對應的方法或屬性

    ?

    class A(list):
    pass
    B = A() #
    B.append(1);B.append(2);B.append(3)
    print(B)
    打印結果:
    [1, 2, 3] #B繼承了A列表對應的內部函數功能

    class B(A) #A是父類,意味class B繼承了父類功能
    pass

    多態

    調用同樣的函數名,實現不一樣的功能

    class A:
    def fun(self):
    print('我是小A')
    class B:
    def fun(self):
    print('我是小B')
    a = A();b = B()
    print(a.fun(),b.fun())
    打印結果:
    我是小A
    我是小B

    面向對象

    1. OOA面向對象分析
    2. OOD面向對象設計
    3. OOP面向對象編程

    面向對象有兩個重要概念,類(class)和實例(instance),類是抽象的模板,實例是根據類創建出來的一個個具體的“對象”

    Python類和對象、模塊_父類_04

    Python嚴格要求方法需要有實例才能被調用,這種限制其實就是Python所謂的綁定概念。

    創建類
    class Myclass(object): #pythong公約,類的第一個字母大寫
    pass
    創建實例A
    A = Myclass()

    創建實例的時候,把我們認為必須綁定的屬性強制填寫進去,self、__init__ ,例如在Student類時,把name、score等屬性綁上去

    class Student(object):
    def __init__(self, name, score):
    self.name = name
    self.score = score


    模塊的理解

    • 容器:對數據的封裝,例如列表、元組、字符串、字典等
    • 函數:對語句的封裝
    • 類:對方法和屬性的封裝,就是對函數和容器的封裝
    • 模塊:每個保存的.py都是一個獨立的模塊,也就是程序

    模塊的引入

    模塊的作用將大的程序拆成小分支,易于測試和閱讀;一段好的模塊作為中間件反復被利用

    引入方式:
    第一種:import 模塊名
    第二種:from 模塊名 import 函數名 #這個方法引用模塊函數等不需要再加模塊前綴
    第三種:import 模塊名 as 新名字 #別名的方式可能在命名空間上最合適

    模塊的路徑

    def__init__方法是Python類中的一個無法繞開的方法。它相當于面向對象方法中的 C++ 構造函數
    當你創建一個類的新對象時,Python 會自動將你的參數傳遞給 __init__方法并調用它來初始化對象的屬性
    __init__方法讓類初始化對象的屬性,沒有其他作用,它只在類中使用


    if __name__ == ‘__main__’ #測試使用,這是主函數
    一個python文件通常有兩種使用方法,
    第一是作為腳本直接執行
    第二是 import 到其他的 python 腳本中被調用(模塊重用)執行
    因此 if __name__ == 'main': 的作用就是控制這兩種情況執行代碼的過程
    if __name__ == 'main': 下的代碼只有在第一種情況下(即文件作為腳本直接執行)才會被執行,而 import 到其他腳本中是不會被執行的

    搜索路徑 #import sys命令用于查詢模塊默認可導入的路徑,它是一個列表,因此可以通過sys.path.append導入指定模塊路徑

    包(package)
    1、創建一個文件夾,用于存放相關的模塊,文件夾的名字即包的名字;
    2、在文件夾中創建一個__init__.py的模塊文件,內容可以為空;
    3、將相關的模塊放入文件夾中

    Python類和對象、模塊_父類_05

    本文摘自 :https://blog.51cto.com/l

    開通會員,享受整站包年服務
    国产呦精品一区二区三区网站|久久www免费人咸|精品无码人妻一区二区|久99久热只有精品国产15|中文字幕亚洲无线码