首頁  >  文章  >  後端開發  >  python是什麼軟體?

python是什麼軟體?

藏色散人
藏色散人原創
2021-06-10 15:45:5428154瀏覽

python不是軟體,是一種電腦程式語言;Python提供了高效的高階資料結構,還能簡單有效地物件導向程式設計;Python語法和動態類型,以及解釋型語言的本質,使它成為多數平台上寫腳本和快速開發應用的程式語言。

python是什麼軟體?

本文操作環境:windows7系統、Dell G3電腦、python3.6.4。

python是什麼軟體?

python不是軟體,是一種電腦程式語言。

Python由荷蘭數學和電腦科學研究學會的Guido van Rossum 於1990 年代初設計,作為一門稱為ABC語言的替代品。 Python提供了高效率的高階資料結構,還能簡單有效地物件導向程式設計。 Python語法和動態類型,以及解釋型語言的本質,使它成為多數平台上寫腳本和快速開發應用的程式語言,隨著版本的不斷更新和語言新功能的添加,逐漸被用於獨立的、大型項目的開發。 

Python解釋器易於擴展,可以使用C或C (或其他可以透過C呼叫的語言)擴展新的功能和資料類型。 Python 也可用於可客製化軟體中的擴充程式語言。 Python豐富的標準函式庫,提供了適用於各個主要係統平台的原始碼或機器碼。

優點

簡單:Python是一種代表簡單主義思想的語言。閱讀一個良好的Python程式就感覺像是在讀英文一樣。它使你能夠專注於解決問題而不是去搞清楚語言本身。

易學:Python極為容易上手,因為Python有極為簡單的說明文件   。

易讀、易於維護:風格清晰劃一、強制縮排

用途廣泛

速度快:Python 的底層是用C 語言寫的,很多標準庫和第三方函式庫也都是用C 寫的,運作速度非常快。

免費、開源:Python是FLOSS(自由/開放原始碼軟體)之一。使用者可以自由地發布這個軟體的拷貝、閱讀它的原始碼、對它做改動、把它的一部分用於新的自由軟體中。 FLOSS是基於一個團體分享知識的概念。

高層語言:用Python語言寫程式的時候無需考慮諸如如何管理你的程式所使用的記憶體一類的底層細節。

可移植性:由於它的開源本質,Python已經被移植在許多平台上(經過改變使它能夠工作在不同平台上)。這些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、 PlayStation、Sharp Zaurus、Windows CE、PocketPC、Symbian、Google基於linux開發的android平台。

解釋性:一個用編譯性語言例如C或C 寫的程式可以從原始檔(即C或C 語言)轉換到一個你的電腦使用的語言(二進位程式碼,即0和1) 。這個過程透過編譯器和不同的標記、選項完成。

運行程式的時候,連接/轉載器軟體把你的程式從硬碟複製到記憶體並且運行。而Python語言寫的程式不需要編譯成二進位程式碼。你可以直接從原始碼運行 程式。

在電腦內部,Python解釋器把原始碼轉換成稱為字節碼的中間形式,然後再把它翻譯成電腦使用的機器語言並運行。這使得使用Python更加簡單。也使得Python程式更加容易移植。

物件導向:Python既支援流程導向的程式設計也支援物件導向的程式設計。在「過程導向」的語言中,程式是由過程或僅僅是可重複使用程式碼的函數建構起來的。在「物件導向」的語言中,程式是由資料和功能組合而成的物件建構起來的。

Python是完全物件導向的語言。函數、模組、數字、字串都是物件。並且完全支援繼承、重載、衍生、多重繼承,有益於增強原始碼的複用性。 Python支援重載運算子和動態類型。相對於Lisp這種傳統的函數式程式語言,Python對函數式設計只提供了有限的支援。有兩個標準函式庫(functools, itertools)提供了Haskell和Standard ML中久經考驗的函數式程式設計工具。

可擴展性、可擴充性:如果需要一段關鍵程式碼運行得更快或希望某些演算法不公開,可以部分程式用C或C 編寫,然後在Python程式中使用它們。

Python本身被設計為可擴充的。並非所有的特性和功能都整合到語言核心。 Python提供了豐富的API和工具,讓程式設計師可以輕鬆地使用C語言、C 、Cython來編寫擴充模組。 Python編譯器本身也可以被整合到其它需要腳本語言的程式內。因此,很多人也把Python當作一種「膠水語言」(glue language)。使用Python將其他語言編寫的程式進行整合和封裝。在Google內部的許多項目,例如Google Engine使用C 編寫效能要求極高的部分,然後用Python或Java/Go呼叫對應的模組。 《Python技術手冊》的作者馬特利(Alex Martelli)說:「這很難講,不過,2004 年,Python 已在Google 內部使用,Google 召募許多Python 高手,但在這之前就已決定使用Python ,他們的目的是Python where we can, C where we must,在操控硬體的場合使用C ,在快速開發時候使用Python。」

可嵌入性:可以把Python嵌入C/C 程序,從而向程式使用者提供腳本功能。

豐富的函式庫:Python標準函式庫確實很龐大。它可以幫助處理各種工作,包括正規表示式、文件生成、單元測試、線程、資料庫、網頁瀏覽器、CGI、FTP、電子郵件、XML、XML-RPC、HTML、WAV檔案、密碼系統、GUI(圖形使用者介面)、Tk和其他與系統相關的操作。這被稱作Python的「功能齊全」理念。除了標準庫以外,還有許多其他高品質的庫,如wxPython、Twisted和Python圖像庫等等。

規範的程式碼:Python採用強制縮排的方式使得程式碼具有較好可讀性。而Python語言寫的程式不需要編譯成二進位程式碼。 Python的作者設計限制性很強的語法,使得不好的程式設計習慣(例如if語句的下一行不向右縮排)都無法通過編譯。其中很重要的一項就是Python的縮排規則。一個和其他大多數語言(如C)的區別就是,一個模組的界限,完全是由每行的首字符在這一行的位置來決定(而C語言是用一對花括號{}來明確的定出模組的邊界,與字元的位置毫無關係)。透過強製程式設計師們縮排(包括if,for和函數定義等所有需要使用模組的地方),Python確實使得程式更加清晰和美觀。

高階動態程式設計:雖然Python可能被粗略地分類為「腳本語言」(script language),但實際上一些大規模軟體開發計劃例如Zope、Mnet及BitTorrent,Google也廣泛地使用它。 Python的支持者較喜歡稱它為一種高階動態程式語言,原因是「腳本語言」泛指僅作簡單程式設計任務的語言,如shellscript、VBScript等只能處理簡單任務的程式語言,並不能與Python相提並論。

做科學計算優點多:說起科學計算,首先會被提及的可能是MATLAB。除了MATLAB的一些專業性很強的工具箱還無法被取代之外,MATLAB的大部分常用功能都可以在Python世界中找到相應的擴充程式庫。和MATLAB相比,用Python做科學計算有以下優點:

● 首先,MATLAB是一款商用軟體,且價格不菲。而Python完全免費,眾多開源的科學計算庫都提供了Python的呼叫介面。使用者可以在任何電腦上免費安裝Python及其絕大多數擴充庫。

● 其次,與MATLAB相比,Python是一門更易學、更嚴謹的程式設計語言。它能讓使用者寫出更易讀、更容易維護的程式碼。

● 最後,MATLAB主要專注於工程和科學計算。然而即使在運算領域,也常會遇到文件管理、介面設計、網路通訊等各種需求。而Python有著豐富的擴充庫,可以輕易完成各種高階任務,開發者可以用Python實現完整應用程式所需的各種功能。

缺點

單行語句和命令列輸出問題:很多時候不能將程式連寫成一行,如import sys;for i in sys.path:print i。而perl和awk就無此限制,可以較為方便的在shell下完成簡單程序,不需要如Python一樣,必須將程序寫入一個.py檔。

給初學者帶來困惑:獨特的語法,這也許不應該被稱為局限,但是它用縮進來區分語句關係的方式還是給很多初學者帶來了困惑。即便是很有經驗的Python程式設計師,也可能陷入陷阱當中。

運行速度慢:這裡是指與C和C 相比。 Python開發人員盡量避開不成熟或不重要的最佳化。一些針對非重要部位的加快運行速度的補丁通常不會被合併到Python內。所以很多人認為Python很慢。不過,根據二八定律,大多數程式對速度要求不高。在某些對運行速度要求很高的情況,Python設計師傾向於使用JIT技術,或用使用C/C 語言改寫這部分程式。可用的JIT技術是PyPy。

推薦學習:《python影片教學

以上是python是什麼軟體?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn