本文目錄一覽:
Python中的面向對象(進階)
一、實例方法,類方法,靜態方法
我們首先寫一個類,裏面包含這三種方法。
可以看到,我們用到了兩個裝飾器。
我們用類和實例分別調用下類方法
我們用類和實例分別調用下靜態方法
靜態方法其實就是把一個普通的函數寫在類里,與直接在外層寫一個函數是一樣的,本質上是一個函數。
為了方便理解,我們分別打印下這些方法的類型
通過type()查看對象是方法還是函數
此外,還可以通過inspect模塊判斷某個對象是否是某種類型,返回布爾值。
用法
小Tips:概念理解
直接def定義的,我們叫做函數
把函數放到類里,我們叫做方法
方法可以通過裝飾器staticmethod轉為(放在方法里的)函數
繼承
一個類繼承另一個類時,會自動獲得另一個類的所有屬性和方法,被繼承的類稱之為父類,新類稱為子類。子類擁有父類所有的屬性和方法,並且可以定義自己的屬性和方法
我們以上邊的Rectangle類為父類來試一下
1)完全繼承
可以看到,子類完全繼承父類後,可以直接調用父類的所有方法。
2)部分繼承
部分繼承:繼承父類後,修改父類的同名方法
我們試一下,Square繼承Rectangle後,修改__init__()方法
3)拓展父類的方法
在保留父類中某個方法的代碼同時,對方法進行拓展
可以在方法中加入”super().方法名”來實現
4)@property
python之面向對象
面向對象(OOP)是一種對現實世界理解和抽象的方法,對象的含義是指在現實生活中的具體事物, 一切皆對象 ,Python 是一門面向對象的語言,面向對象編程簡單來說就是一種 封裝代碼 的方式。
Python 中類的定義使用 class 關鍵字定義類,語法如下所示:
舉例,定義一個類 Cat
構造方法 init() 會在類實例化時自動調用。無論構造方法還是其他方法都需要將 self 作為第一個參數,它代表類的實例。
類創建好後,可以直接通過類名訪問屬性,格式為: 類名.屬性名 ,比如我們訪問 Cat 類的 color 屬性,如下所示:
創建對象也稱類的實例化,比如我們通過 Cat 類創建對象,如下所示:
創建好對象後,使用它訪問屬性和調用方法了,如下所示:
內部私有屬性和方法是可以被訪問和調用的。
我們來一起看個例子,如下所示:
輸出結果:
Python 支持類的繼承,而且支持多繼承,語法格式為:
示例如下所示:
如果繼承的父類方法不能滿足我們的需求,這時子類可以 重寫 父類方法,如下所示:
Python 面向對象的核心概念匯總
1)、將公共的屬性和方法放到父類中,自己只考慮特有的屬性和方法。
2)、覆蓋父類的方法即重寫父類方法,在運行中只會調用子類中重寫的方法不用調用父類中的方法。
3)、子類擁有一個父類叫作單繼承,子類可以擁有多個父類,並且具有所有父類的屬性和方法。
1)、指的是為不同的基礎形態(數據類型)提供着接口的能力,接口指的是函數和方法。
2)、顧名思義,多態就是多種表現形態的意思,它是一種機制,一種能力,而非某個關鍵詞。它在類的繼承中得以實現,在類的方法調用中得以體現。
3)、多態意味着變量並不知道引用的對象是什麼,根據引用對象的不同表現不同的行為方式。
4)、多態以封裝和繼承為前提,不同的子類對象調用相同的方法,產生不同的執行效果。它可以增加代碼的靈活度,以繼承和重寫父類的方法為前提,調用方法不會影響到類的內部設計
1)、通過組合技巧將一個對象作用變量保存在另一個對象中,可以模擬擁有關係。
2)、它是一種將對象或類組合成更複雜的數據結構或構件實現的方法。
3)、在組合中,一個對象可用於調用其他模塊中的成員函數,這樣一來,無需通過繼承就可以實現基本功能的跨模塊調用。
總結:
今天和大家分享的是面向對象編程的核心概念:封裝,抽象,多態、繼承、組合,可以結合代碼示例本地去運行着感受這些概念的含義。
python需要學習什麼內容?
Python的學習內容還是比較多的,我們將學習的過程劃分為4個階段,每個階段學習對應的內容,具體的學習順序如下:
Python學習順序:
①Python軟件開發基礎
掌握計算機的構成和工作原理
會使用Linux常用工具
熟練使用Docker的基本命令
建立Python開發環境,並使用print輸出
使用Python完成字符串的各種操作
使用Python re模塊進行程序設計
使用Python創建文件、訪問、刪除文件
掌握import 語句、From…import 語句、From…import* 語句、方法的引用、Python中的包
②Python軟件開發進階
能夠使用Python面向對象方法開發軟件
能夠自己建立數據庫,表,並進行基本數據庫操作
掌握非關係數據庫MongoDB的使用,掌握Redis開發
能夠獨立完成TCP/UDP服務端客戶端軟件開發,能夠實現ftp、http服務器,開發郵件軟件
能開發多進程、多線程軟件
③Python全棧式WEB工程師
能夠獨立完成後端軟件開發,深入理解Python開發後端的精髓
能夠獨立完成前端軟件開發,並和後端結合,熟練掌握使用Python進行全站Web開發的技巧
④Python多領域開發
能夠使用Python熟練編寫爬蟲軟件
能夠熟練使用Python庫進行數據分析
招聘網站Python招聘職位數據爬取分析
掌握使用Python開源人工智能框架進行人工智能軟件開發、語音識別、人臉識別
掌握基本設計模式、常用算法
掌握軟件工程、項目管理、項目文檔、軟件測試調優的基本方法
互聯網行業目前還是最熱門的行業之一,學習IT技能之後足夠優秀是有機會進入騰訊、阿里、網易等互聯網大廠高薪就業的,發展前景非常好,普通人也可以學習。
想要系統學習,你可以考察對比一下開設有相關專業的熱門學校,好的學校擁有根據當下企業需求自主研發課程的能力,中博軟件學院、南京課工場、南京北大青鳥等開設python專業的學校都是不錯的,建議實地考察對比一下。
祝你學有所成,望採納。
請點擊輸入圖片描述
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/306344.html