本人16年畢業,參加工做後從事的是軟件測試行業。在工做期間,發現如今軟件的自動化測試逐漸的興起、壯大,而Python語言在自動化測試中佔有很是重要的比重,遂興起了學習Python的興趣。從而也爲我打開、認識了一片新天地。學習Python已經一年多的時間,期間看了衆多學習資料,可是沒有作什麼筆記,致使許多問題常常記不住,反覆查閱資料。因此決心寫博客將一些心得寫下來。首先是第一篇學習筆記。python
下面這些問題是我從《Python學習手冊》一書以及其餘方面瞭解到的。程序員
1.人們爲什麼使用Python? web
如今市場上擁有衆多的編程語言,這每每是入門的小白們首先須要面對的問題。而如今Python在web開發、網絡編程、科學計算、GUI、運維自動化、爬蟲、大數據、人工智能等 方面都有應用。使用Python開發的程序每每有一些共性.數據庫
主要是如下幾方面:編程
軟件質量:網絡
在很大的程度上,Python注重可讀性、一致性和軟件質量,從而與其餘的腳本語言區別開來。此外,Python支持軟件開發的高級重用機制,例如面向對象程序設計(OOP)。框架
提升開發者的效率:
相對於C、C++和Java等編譯/靜態類型的語言,Python的開發者效率提升了數倍。代碼的大小每每只有C++和Java代碼的1/5~1/3,。這意味着開發、調試、維護的工做量 大大減少,而且Python是一門解釋類型的語言,能夠當即運行,減去了編譯和連接等步驟,進一步提升了程序員的效率。
程序的可移植性:
能夠再Linux、Windows、Mac等平臺上進行代碼的移植,此外,還提供了多種可選的獨立程序,包括圖形界面、數據庫接入、基於web的系統等等。
強大的標準庫:
Python擁有內置了衆多功能模塊,也叫做標準庫。標準庫支持一系列應用級的編程任務,涵蓋了方方面面。此外,還擁有衆多自行開發或者第三方應用支持的擴展庫。
組件集成:
Python還被稱爲「膠水語言」。它能夠調用C和C++的庫,能夠被C和C++的程序調用。能夠與Java組件進行集成,能夠與COM和.NET等框架進行通訊,不只僅是一個獨立 的個體。
享受樂趣:
不只僅是Python,學習任何一門編程語言享受編程之美、享受編程帶給本身的樂趣。運維
2.Python是腳本語言嗎?
Python實際上是一門多用途的語言,如今Python以其獨特的魅力火了起來,帶給編程界老大哥Java很大的煩惱。因此如今來講,‘’‘腳本語言’這一詞語大概是說Python比較適合快速 和靈活的開發模式,而不是隻能應用於特定領域。
Python通常擁有如下三種角色:
Shell工具、控制語言、使用快捷。編程語言
3.Python的缺點?
程序的運行速度和C、C++編寫的程序比起來要慢不少。工具
4.Python前世此生
python的創始人爲吉多•範羅蘇姆(Guido van Rossum)。1989年的聖誕節期間,吉多•範羅蘇姆爲了在阿姆斯特丹打發時間,決心開發一個新的腳本解釋程序,做爲ABC語言的 一種繼承。
最新的TIOBE排行榜,Python趕超PHP佔據第4!!!
Python能夠應用於衆多領域,如:數據分析、組件集成、網絡服務、圖像處理、數值計算和科學計算等衆多領域。目前業內幾乎全部大中型互聯網企業都在使用Python,如:Youtube、Dropbox、BT、Quora(中國知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、騰訊、汽車之家、美團等。互聯網公司普遍使用Python來作的事通常有:自動化運維、自動化測試、大數據分析、爬蟲、Web 等。
5.爲何是Python而不是其餘語言?
C 和 Python、Java、C#等
C語言: 代碼編譯獲得 機器碼 ,機器碼在處理器上直接執行,每一條指令控制CPU工做
其餘語言: 代碼編譯獲得 字節碼 ,虛擬機執行字節碼並轉換成機器碼再後在處理器上執行
Python 和 C Python這門語言是由C開發而來
對於使用:Python的類庫齊全而且使用簡潔,若是要實現一樣的功能,Python 10行代碼能夠解決,C可能就須要100行甚至更多.
對於速度:Python的運行速度相較與C,絕逼是慢了
Python 和 Java、C#等
對於使用:Linux原裝Python,其餘語言沒有;以上幾門語言都有很是豐富的類庫支持
對於速度:Python在速度上可能稍顯遜色
因此,Python和其餘語言沒有什麼本質區別,其餘區別在於:擅長某領域、人才豐富、先入爲主。
6.Python的種類 • Cpython Python的官方版本,使用C語言實現,使用最爲普遍,CPython實現會將源文件(py文件)轉換成字節碼文件(pyc文件),而後運行在Python虛擬機上。 • Jyhton Python的Java實現,Jython會將Python代碼動態編譯成Java字節碼,而後在JVM上運行。 • IronPython Python的C#實現,IronPython將Python代碼編譯成C#字節碼,而後在CLR上運行。(與Jython相似) • PyPy(特殊) Python實現的Python,將Python的字節碼字節碼再編譯成機器碼。 • RubyPython、Brython ... 以上除PyPy以外,其餘的Python的對應關係和執行流程以下: PyPy,在Python的基礎上對Python的字節碼進一步處理,從而提高執行速度!