本文主要向大家介紹了Python語言入門的理解Python語言,通過具體的內容向大家展現,希望對大家學習Python語言入門有所幫助。
python是解釋型的腳本語言
解釋型語言
與C/C++等編譯型語言相比,python語言的程序并不是首先編譯成二進制機器碼后運行,而是由python解析器解釋一句并在python虛擬機中運行一句,直到程序結束或者拋出錯誤。這種方式使得程序開發人員不用過多的關心庫的鏈接、編譯錯誤等問題,這些都由解釋器和虛擬機代勞,大大的減少了開發時間。
腳本語言
腳本語言也稱動態語言,不需要事先將程序編譯,可以動態的部署,即在控制臺中輸入一句運行一句。這種動態性在一定的程度上簡化了“開發、部署和調試”的時間。
python是一種面向對象的高級語言
屬性和方法
在python中,一切皆是對象,比如一個函數、一個類、甚至是一個模塊、一個文件。在python中,一個對象一般由屬性和方法組成,屬性即該對象包含的變量,方法即實現對該對象的操作,例如增、刪、查、改。例如實現一個圓的對象,其屬性包含圓形坐標和半徑,其方法有創建一個圓(初始化)、修改半徑或者圓形、刪除這個圓、或者在界面上畫出其圖像。
面向對象的三大特性
面向對象的編程語言,肯定具備封裝、多態以及繼承的三大特性
封裝
所謂封裝,也就是把客觀事物封裝成抽象的類,并且類可以把自己的數據和方法只讓可信的類或者對象操作,對不可信的進行信息隱藏。封裝是面向對象的特征之一,是對象和類概念的主要特性。簡單的說,一個類就是一個封裝了數據以及操作這些數據的代碼的邏輯實體。在一個對象內部,某些代碼或某些數據可以是私有的,不能被外界訪問。通過這種方式,對象對內部數據提供了不同級別的保護,以防止程序中無關的部分意外的改變或錯誤的使用了對象的私有部分。在python中,默認所有屬性都是公有的,要想設置為私有,需要在屬性前面加上__(兩個下劃線),例如__time。
多態
簡單的理解多態,就是對象可以根據輸入的不同,響應不同的輸出。正式一些的說法就是一個類實例的相同方法在不同情形有不同表現形式。多態機制使具有不同內部結構的對象可以共享相同的外部接口。這意味著,雖然針對不同對象的具體操作不同,但通過一個公共的類,它們(那些操作)可以通過相同的方式予以調用。
繼承
所謂繼承是指可以讓某個類型的對象獲得另一個類型的對象的屬性的方法。它支持按級分類的概念。繼承是指這樣一種能力:它可以使用現有類的所有功能,并在無需重新編寫原來的類的情況下對這些功能進行擴展。通過繼承創建的新類稱為“子類”或“派生類”,被繼承的類稱為“基類”、“父類”或“超類”。繼承的過程,就是從一般到特殊的過程。要實現繼承,可以通過“繼承”(Inheritance)和“組合”(Composition)來實現。繼承概念的實現方式有二類:實現繼承與接口繼承。實現繼承是指直接使用基類的屬性和方法而無需額外編碼的能力;接口繼承是指僅使用屬性和方法的名稱、但是子類必須提供實現的能力;
面向對象的5大原則
單一職責原則SRP(Single Responsibility Principle)
是指一個類的功能要單一,不能包羅萬象。如同一個人一樣,分配的工作不能太多,否則一天到晚雖然忙忙碌碌的,但效率卻高不起來。
開放封閉原則OCP(Open-Close Principle)
一個模塊在擴展性方面應該是開放的而在更改性方面應該是封閉的。比如:一個網絡模塊,原來只服務端功能,而現在要加入客戶端功能, 那么應當在不用修改服務端功能代碼的前提下,就能夠增加客戶端功能的實現代碼,這要求在設計之初,就應當將服務端和客戶端分開,公共部分抽象出來。
替換原則(the Liskov Substitution Principle LSP)
子類應當可以替換父類并出現在父類能夠出現的任何地方。比如:公司搞年度晚會,所有員工可以參加抽獎,那么不管是老員工還是新員工, 也不管是總部員工還是外派員工,都應當可以參加抽獎,否則這公司就不和諧了。
依賴原則(the Dependency Inversion Principle DIP) 具體依賴抽象,上層依賴下層。假設B是較A低的模塊,但B需要使用到A的功能,
這個時候,B不應當直接使用A中的具體類: 而應當由B定義一抽象接口,并由A來實現這個抽象接口,B只使用這個抽象接口:這樣就達到 了依賴倒置的目的,B也解除了對A的依賴,反過來是A依賴于B定義的抽象接口。通過上層模塊難以避免依賴下層模塊,假如B也直接依賴A的實現,那么就可能造成循環依賴。一個常見的問題就是編譯A模塊時需要直接包含到B模塊的cpp文件,而編譯B時同樣要直接包含到A的cpp文件。
接口分離原則(the Interface Segregation Principle ISP)
模塊間要通過抽象接口隔離開,而不是通過具體的類強耦合起來。
python的優缺點
優點
語法以及數據結構簡單
python的語法比較符合人類的習慣,所以讀代碼的時候有一種讀英語的感覺。python的本質是偽代碼,初衷就是希望開發人員能夠專注于問題本身而不受編程語言的限制。 python的數據結構一共有3種:序列(列表、元組、字符串)、字典(映射)、集合。對于每一種的數據結構的操作(增刪查改)的語法都差不多,非常的方便。
格式規范
python采用強制縮進的方式作為程序間隔,一般縮進為4個空格。這樣的好處是代碼容易閱讀而且非常的簡潔。
python是開源的語言
由于python的開源性,可以很容易的閱讀源碼,并且自由的發布軟件。
可擴展性和嵌入性
如果你需要你的一段關鍵代碼運行得更快或者希望某些算法不公開,你可以把你的部分程序用C或C編寫,然后在你的Python程序中使用它們。你可以把Python嵌入你的C/C程序,從而向你的程序用戶提供腳本功能。
第三方庫豐富
python的庫非常多,基本各個領域都有非常有效的庫,這些庫給開發人員帶來了極大的方便。
缺點
運行速度稍慢
相對于C等編譯型語言,python在運行速度(尤其是計算速度)稍慢,但是可以用C重寫大量計算的部分代碼,再用python調用,可以提升速度。
本文由職坐標整理并發布,了解更多內容,請關注職坐標編程語言Python頻道!