Python安裝及簡介
Python簡介
Python的創始人為吉多·範羅蘇姆(Guido van Rossum)。1989年的聖誕節期間,吉多·範羅蘇姆為了在阿姆斯特丹打發時間,決心開發一個新的腳本解釋程序,作為ABC語言的一種繼承。之所以選中Python作為程序的名字,是因為他是BBC電視劇——蒙提·派森的飛行馬戲團(Monty Python‘s Flying Circus)的愛好者。ABC是由吉多參加設計的一種教學語言。就吉多本人看來,ABC這種語言非常優美和強大,是專門為非專業程序員設計的。但是ABC語言並沒有成功,究其原因,吉多認為是非開放造成的。吉多決心在Python中避免這一錯誤,並獲取了非常好的效果,完美結合了C和其他一些語言。
就這樣,Python在吉多手中誕生了。實際上,第一個實現是在Mac機上。可以說,Python是從ABC發展起來,主要受到了Modula-3(另一種相當優美且強大的語言,為小型團體所設計的)的影響。並且結合了Unix shell和C的習慣。
目前吉多仍然是Python的主要開發者,決定整個Python語言的發展方向。Python社區經常稱呼他是仁慈的獨裁者。
Python 2.0於2000年10月16日發布,增加了實現完整的垃圾回收,並且支持Unicode。同時,整個開發過程更加透明,社區對開發進度的影響逐漸擴大。Python 3.0於2008年12月3日發布,此版不完全兼容之前的Python源代碼。不過,很多新特性後來也被移植到舊的Python 2.6/2.7版本。
Python是完全面向對象的語言。函數、模塊、數字、字符串都是對象。並且完全支持繼承、重載、派生、多重繼承,有益於增強源代碼的復用性。Python支持重載運算符,因此Python也支持泛型設計。相對於Lisp這種傳統的函數式編程語言,Python對函數式設計只提供了有限的支持。有兩個標準庫(functools, itertools)提供了與Haskell和Standard ML中類似的函數式程序設計工具。
雖然Python可能被粗略地分類為“腳本語言”(script language),但實際上一些大規模軟件開發項目例如Zope、Mnet及BitTorrent,Google也廣泛地使用它。Python的支持者較喜歡稱它為一種高級動態編程語言,原因是“腳本語言”泛指僅作簡單程序設計任務的語言,如shell script、VBScript等只能處理簡單任務的編程語言,並不能與Python相提並論。
Python本身被設計為可擴充的。並非所有的特性和功能都集成到語言核心。Python提供了豐富的API和工具,以便程序員能夠輕松地使用C、C++、Cython來編寫擴充模塊。Python編譯器本身也可以被集成到其它需要腳本語言的程序內。因此,有很多人把Python作為一種“膠水語言”(glue language)使用。使用Python將其他語言編寫的程序進行集成和封裝。在Google內部的很多項目,例如Google App Engine使用C++編寫性能要求極高的部分,然後用Python或Java/Go調用相應的模塊。《Python技術手冊》的作者馬特利(Alex Martelli)說:“這很難講,不過,2004年,Python已在Google內部使用,Google召募許多Python高手,但在這之前就已決定使用Python。他們的目的是盡量使用Python,在不得已時改用C++;在操控硬件的場合使用C++,在快速開發時候使用Python。”
Python是一種廣泛使用的高層次,通用,解釋,動態編程語言。它的設計理念強調代碼的可讀性,它的語法允許程序員表達更少的代碼的概念比將在可能語言如C ++或Java。該語言提供旨在使兩個小型和大型項目清晰的結構。
Python支持多種編程範例,包括面向對象的,命令式和函數式編程或程序性的風格。它的特點是動態類型系統和自動內存管理和擁有龐大而全面的標準庫。
Python解釋可用於許多操作系統,讓Python代碼在各種系統上運行。使用第三方工具,如Py2exe或Pyinstaller,Python代碼可以打包成獨立的可執行程序為一些最流行的操作系統,所以基於Python的軟件可以分布到,並用時,這些無需環境中安裝Python解釋器。
CPython的,巨蟒的參考實現,是自由和開放源碼軟件,並有一個以社區為基礎的發展模式,因為這樣做幾乎所有的變型實現的。 CPython的是由非營利的Python軟件基金會管理。
由上圖可見,Python整體呈上升趨勢,反映出Python應用越來越廣泛並且也逐漸得到業內的認可!!!
Python可以應用於眾多領域,如:數據分析、組件集成、網絡服務、圖像處理、數值計算和科學計算等眾多領域。目前業內幾乎所有大中型互聯網企業都在使用Python,如:Youtube、Dropbox、BT、Quora(中國知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、騰訊、汽車之家、美團等。互聯網公司廣泛使用Python來做的事一般有:自動化運維、自動化測試、大數據分析、爬蟲、Web 等。
為什麽是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和其他語言沒有什麽本質區別,其他區別在於:擅長某領域、人才豐富、先入為主。
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的對應關系和執行流程如下:
Linux安裝Python
1、下載源碼包
前往官網:https://www.python.org/downloads/source/
[root@localhost opt]#wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz
2、安裝:
安裝基本GCC編譯環境
yum -y install gcc gcc-c++ make automake autoconf
安裝源碼包
[root@localhost opt]#tar fx Python-3.5.1.tgz
[root@localhost opt]#cd Python-3.5.1
[root@localhost opt]#./configure --prefix=/usr/local/python35 #需要點時間
[root@localhost opt]#make install #需要點時間
3、配置環境變量
vi /etc/profile #全局變量文件,最底下添加下面兩行
PATH=/usr/local/python3/bin:/usr/local/python3/lib:$PATH
export PATH
:wq #保存退出
source /etc/profile #生效環境變量
[root@localhost]# python3 #安裝完成
Python 3.5.1 (default, May 10 2016, 10:32:08)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
windows安裝Python
1、下載安裝包
https://www.python.org/downloads/
2、安裝
默認安裝路徑:C:\python3
3、配置環境變量
【右鍵計算機】--》【屬性】--》【高級系統設置】--》【高級】--》【環境變量】--》【在第二個內容框中找到 變量名為Path 的一行,雙擊】 --> 【Python安裝目錄追加到變值值中,用 ; 分割】
如:原來的值;C:\python3,切記前面有分號
PyPy,在Python的基礎上對Python的字節碼進一步處理,從而提升執行速度!
Python安裝及簡介