原创 Python中如何單繼承?

繼承指的是類與類之間的關係,是一種什麼是什麼的關係,功能之一就是用來解決代碼重用問題。 繼承是一種創建新類的方式,在python中,新建的類可以繼承一個或多個父類,父類又可稱爲基類或超類,新建的類稱爲派生類或子類,繼承又分爲單繼承

原创 Python3中的decode()和encode()函數

decode的作用是將其他編碼的字符串轉換成unicode編碼,如str1.decode(‘utf-8’),表示將utf-8編碼的字符串轉換成unicode編碼。 encode的作用是將unicode編碼轉換成其他編碼的字符串,如

原创 Python中方法的重寫——對父類方法進行擴展

當父類的方法重寫不能滿足子類的需求時,可以對方法進行重寫。 重寫父類方法有兩種情況: ①覆蓋父類的方法 ②對父類方法進行擴展 在類的繼承中,如果重定義某個方法,該方法會覆蓋父類的同名方法,但有時,我們希望能同時實現父類的功能,這時

原创 python創建對象時自動調用初始化方法

Python創建對象:對象名稱=類() class Point: pass p1 = Point() p2 = Point() 在創建對象時,Python解釋器會自動執行以下操作: 1.創建對象----爲對象在內存中分配

原创 Python中方法搜索順序——MRO

Python中針對類提供了一個內置函數__mro__可以查看方法搜索順序 mro順序: Method Resolution Order 多繼承在python解釋器中時怎樣調用它的各個父類方法呢?在python類中,有一個內置方法_

原创 Python面向對象封裝

什麼是封裝? 在程序設計中,封裝(Encapsulation)是對具體對象的一種抽象,簡單的講是將某些部分隱藏起來,在程序外部看不到, 其含義是其他程序無法調用。 封裝既能保護隱私,也能隔離複雜度。 封裝操作的是屬性和方法。 封裝

原创 Python面向對象封裝的簡明例子——擺放傢俱

實例一:擺放傢俱 需求如下: 傢俱(HouseItem)有名字和佔地面,其中 席夢思(bed) 佔地 4 平米 衣櫃(chest) 佔地 2 平米 餐桌(table) 佔地 1.5 平米 打印出傢俱名稱呵佔地面積 分析:從以上需求

原创 Python爬蟲之自動創建請求對象

【導讀】記錄學習爬蟲的過程 【主題】Python爬蟲之自動創建請求對象 from urllib import request import re url = r'http://www.baidu.com/' #創建自定義請求對象

原创 Python中類的封裝:一個對象的屬性可以是另外一個類型創建的對象

Python中類的封裝:一個對象的屬性可以是另外一個類型創建的對象 需求如下: 士兵 許三多 有一把 AK47 士兵 可以 開火 槍 能夠 發射 子彈 槍 裝填 裝填子彈 —— 增加子彈數量 分析如下: 士兵 許三多 需要創建

原创 Python的類和對象詳細介紹

作爲python的初學者,怎樣才能更好的理解python的類和對象呢? 第一步,我們先從來看一下類和對象比較抽象的定義: 什麼是類? 類是一種抽象的數據類型。主要是將方法(函數)和屬性(變量)封裝到類裏,方便引用和管理。 什麼是對

原创 Python中內置方法__str__方法顯示自定義內容

__str__方法作用: str()方法屬於Python的內置方法,當使用print輸出對象的時候,只要自己定義了__str__(self)方法,那麼就會打印從在這個方法中return的數據 _str__方法使用: class 類

原创 Python中設置屬性初始值

Python中我們一般如何設置屬性的初始值呢? 答案就在init()方法中,init()這種初始化方法,用來初始化新創建對象的屬性,在一個對象被創建以後會立即調用 有以下2種情況: ①默認參數調用init()方法 class Ca

原创 Python爬蟲之僞裝瀏覽器User-Agent

【導讀】記錄學習爬蟲的過程 【主題】Python爬蟲之僞裝瀏覽器原理 【分析】 1.創建自定義請求對象的目的,對抗網站的反爬蟲機制 2.反爬蟲機制1:判斷用戶是否是瀏覽器訪問(User-Agent) 3.對抗措施1:僞裝瀏覽器進行

原创 Python中方法的重寫——覆蓋父類的方法

當父類的方法重寫不能滿足子類的需求時,可以對方法進行重寫。 重寫父類方法有兩種情況: ①覆蓋父類的方法 ②對父類方法進行擴展 覆蓋父類的方法使用場景 在開發時,如果父類的實現方法和子類的實現方法完全不同 就可以使用覆蓋父類的方式,

原创 Python私有屬性和方法

對象 的 某些屬性或方法 可能只希望 在對象的內部被使用,而 不希望在外部被訪問到就可以設置爲私有屬性和私有方法。 如何定義私有屬性和方法?  在 定義屬性或方法時,在 屬性名或者方法名前 增加 兩個下劃線,定義的就是 私有 屬性