<wbr id="juant"></wbr>
  • <wbr id="juant"></wbr>
    更多課程 選擇中心


    Python培訓

    400-111-8989

    python中的類和對象是什么?

    • 發布:Python培訓
    • 來源:實戰Python
    • 時間:2019-07-01 15:20

    類是抽象的概念,而對象是具體的東西。在面向對象編程的世界中,一切皆為對象,對象都有屬性和行為,每個對象都是獨一無二的,而且對象一定屬于某個類(型)。當我們把一大堆擁有共同特征的對象的靜態特征(屬性)和動態特征(行為)都抽取出來后,就可以定義出一個叫做“類”的東西。

    我們先以生活中的例子,舉例說明類和對象,類(class): 相當于施工圖紙(blueprint),對象(object):房子(已經建造好的)。

    接下來,讓我們用代碼的方式看一下類和對象的概念:

    Python中可以使用class關鍵字定義類,然后在類中通過之前學習過的函數來定義方法,這樣就可以將對象的動態特征描述出來,代碼如下所示:

    class Student(object):
    
    # __init__是一個特殊方法用于在創建對象時進行初始化操作 # 通過這個方法我們可以為學生對象綁定name和age兩個屬性
    
    def __init__(self, name, age):
    
    self.name = name
    
    self.age = age
    
    def study(self, course_name):
    
    print('%s正在學習%s.' % (self.name, course_name))
    
    # PEP 8要求標識符的名字用全小寫多個單詞用下劃線連接
    
    # 但是很多程序員和公司更傾向于使用駝峰命名法(駝峰標識)
    
    def watch_tv(self):
    
    if self.age < 18:
    
    print('%s只能觀看《熊出沒》.' % self.name)
    
    else:
    
    print('%s《電鋸驚魂》來了.' % self.name)

    注意:class后面緊接著是類名,即Student。類名通常是大寫開頭的單詞,緊接著是(object),表示該類是從哪個類繼承下來的,繼承的概念我們后面再講,通常,如果沒有合適的繼承類,就使用object類,這是所有類最終都會繼承的類。

    當我們定義好一個類之后,可以通過下面的方式來創建對象并給對象發消息。創建實例是通過類名+()實現的:

    def main():
    
    # 創建學生對象并指定姓名和年齡
    
    stu1 = Student('小白菜', 21)
    
    # 給對象發study消息 stu1.study('Python程序設計')
    
    # 給對象發watch_tv消息
    
    stu1.watch_tv()
    
    stu2 = Student('王大錘', 15)
    
    stu2.study('思想品德')
    
    stu2.watch_tv()
    
    if __name__ == '__main__': main()

    和普通的函數相比,在類中定義的函數只有一點不同,就是第一個參數永遠是實例變量self,并且,調用時,不用傳遞該參數。除此之外,類的方法和普通函數沒有什么區別,所以,你仍然可以用默認參數、可變參數、關鍵字參數和命名關鍵字參數。

    小結

    類是創建實例的模板,而實例則是一個一個具體的對象,各個實例擁有的數據都互相獨立,互不影響.

    方法就是與實例綁定的函數,和普通函數不同,方法可以直接訪問實例的數據.

    通過在實例上調用方法,我們就直接操作了對象內部的數據,但無需知道方法內部的實現細節。

    和靜態語言不同,Python允許對實例變量綁定任何數據,也就是說,對于兩個實例變量,雖然它們都是同一個類的不同實例,但擁有的變量名稱都可能不同.

    免責聲明:內容和圖片源自網絡,版權歸原作者所有,如有侵犯您的原創版權請告知,我們將盡快刪除相關內容。

    預約申請免費試聽課

    填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

    上一篇:python網絡爬蟲都能干什么?
    下一篇:Python中數據封裝是什么?

    Python培訓班線上線下哪種靠譜

    python線上培訓班學費一般多少

    Python線下培訓班有哪些

    一篇文章帶你了解python和c語言的區別

    • 掃碼領取資料

      回復關鍵字:視頻資料

      免費領取 達內課程視頻學習資料

    • 視頻學習QQ群

      添加QQ群:1143617948

      免費領取達內課程視頻學習資料

    Copyright ? 2021 Tedu.cn All Rights Reserved 京ICP備08000853號-56 京公網安備 11010802029508號 達內時代科技集團有限公司 版權所有

    選擇城市和中心
    黑龍江省

    吉林省

    河北省

    湖南省

    貴州省

    云南省

    廣西省

    海南省

    天天日天天射天天干天天伊|奇米电影|奇米网_奇米首页|奇米首页 百度 好搜 搜狗
    <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>