從你開始學習編程的那一刻起,就注定了以后所要走的路—從編程學習者開始,依次經歷實習生、程序員、軟件工程師、架構師、CTO等職位的磨礪;當你站在職位頂峰的位置驀然回首時,會發現自己的成功并不是偶然,在程序員的成長之路上會有不斷修改代碼、尋找并解決Bug、不停測試程序和修改項目的經歷。
不可否認的是,只要你在自己的開發生涯中穩扎穩打,并且善于總結和學習,最終將會得到可喜的收獲。
進入2018年后,身邊越來越多的人說Python語言如日中天了,也有人說Python的發展速度像坐了火箭一般。究竟Python語言有什么神奇之處,讓廣大程序員們對它如癡如醉?
本文將詳細介紹Python語言的發展歷程和特點,和讀者一起找到上述問題的答案。
Python語言基礎
曾經風靡一時的熱播劇《瑯琊榜》有云:遙映人間冰雪樣,暗香幽浮曲臨江,遍識天下英雄路,俯首江左有梅郎……瑯琊榜就和武俠小說中的高手排行榜差不多。
其實在編程語言中也有自己的“瑯琊榜”,這就是TIOBE編程語言社區排行榜,榜單會每月更新一次,榜單的排名客觀公正地展示了各門編程語言的地位。
1.1.1編程世界的“瑯琊榜”
TIOBE編程語言社區排名使用著名的搜索引擎(諸如Google、MSN、Yahoo!、Wikipedia、YouTube以及Baidu等)進行計算,在2017年上半年,Java語言和C語言依然是最大的贏家。其實在最近幾年的榜單中,程序員們早已習慣了C語言和Java的“二人轉”局面。表1-1是2017年12月榜單中的前幾名排名信息。
表1-12017年12月編程語言使用率統計表
1.1.2Python為什么這么火
相信TIOBE編程語言社區排行榜中的排名會出乎很多讀者的意料,Python語言竟然排在PHP、JavaScript等眾多常用開發語言的前面。這似乎不合乎常理,因為在印象中很少有人提及Python,反而經常聽大家談起C、C++、Java、C#和PHP,Python語言為什么這么火呢?筆者認為Python語言之所以如此受大家歡迎,主要有如下兩個原因。
(1)簡單
無論是對于廣大學習者還是程序員,簡單就擁有了最大的吸引力。既然都能實現同樣的功能,人們有什么理由不去選擇更加簡單的開發語言呢?例如,在運行Python程序時,只需要簡單地輸入Python代碼后即可運行,而不需要像其他語言(例如C或C++)那樣需要經過編譯和鏈接等中間步驟。
Python可以立即執行程序,這樣便形成了一種交互式編程體驗和不同情況下快速調整的能力,往往在修改代碼后能立即看到程序改變后的效果。
(2)功能強大
Python語言可以用來作為批處理語言,寫一些簡單工具,處理一些數據,作為其他軟件的接口調試等。
Python語言可以用來作為函數語言,進行人工智能程序的開發,具有Lisp語言的大部分功能。
Python語言可以用來作為過程語言,進行常見的應用程序開發,可以和VB等語言一樣應用。
Python語言可以用來作為面向對象語言,具有大部分面向對象語言的特性,經常作為大型應用軟件的原型開發語言,然后再用C++語言改寫,而有些應用軟件則直接使用Python來開發。
1.1.3Python語言的特點
除了上一小節介紹的簡單和功能強大外,Python語言還有如下特點。
(1)面向對象
Python是一門面向對象編程(面向對象編程縮寫為“OOP”)的語言,它的類模塊支持多態、操作符重載和多重繼承等高級概念,并且以Python特有的簡潔的語法和類型,面向對象十分易于使用。
除了作為一種強大的代碼構建和重用手段以外,Python的面向對象特性使它成為面向對象語言(如C++和Java)的理想腳本工具。例如,通過適當地粘貼代碼,Python程序可以對C++、Java和C#的類進行子類的定制。
(2)免費
Python的使用和分發是完全免費的,就像其他的開源軟件一樣,如Perl、Linux和Apache。開發者可以從Internet上免費獲得Python的源代碼。復制Python,將其嵌入你的系統或者隨產品一起發布都沒有任何限制。
(3)可移植
Python語言的標準實現是由可移植的ANSI C編寫的,可以在目前所有的主流平臺上編譯和運行。現在從PDA到超級計算機,到處都可以見到Python程序的運行。Python語言可以在下列平臺上運行(注意,這并不是全部,而僅僅是筆者所知道的一部分)。
Linux和UNIX系統。
微軟Windows。
Mac OS(包括OS X和Classic)。
BeOS、OS/2、VMS和QNX。
實時操作系統,例如VxWorks。
Cray超級計算機和IBM大型機。
運行Palm OS、PocketPC和Linux的PDA。
游戲終端。
(4)混合開發
Python程序可以以多種方式輕易地與其他語言編寫的組件融合在一起。例如,通過使用Python的C語言API可以幫助Python程序靈活地調用C程序。這意味著可以根據需要給Python 程序添加功能,或者在其他環境系統中使用Python。
例如,將Python與C或者C++寫成的庫文件混合起來,使Python成為一個前端語言和定制工具,這使Python成為一個很好的快速原型工具。出于開發速度的考慮,系統可以先使用Python實現,之后轉移至C,這樣可以根據不同時期性能的需要逐步實現系統。
安裝Python
古人云:工欲善其事,必先利其器。在使用Python語言進行項目開發時,需要先搭建其開發環境。本節將首先詳細講解安裝Python的知識,為讀者步入本書后面知識的學習打下基礎。
1.2.1選擇版本
因為Python語言是跨平臺的,可以運行在Windows、Mac OS、Linux、UNIX和各種其他系統上,所以說Python可以安裝在這些系統中。并且在Windows上寫的Python程序,可以放到Linux系統上運行。
到目前為止,Python最為常用的版本有兩個:一個是2.x版,一個是3.x版。
這兩個版本是不兼容的,因為目前Python正在朝著3.x版本進化,在進化過程中,大量針對2.x版本的代碼要修改后才能運行,所以,目前有許多第三方庫還暫時無法在3.x版本上使用。
讀者可以根據自己的需要選擇進行下載和安裝,以下主要針對Python 3.x版本語法和標準庫進行講解。
1.2.2在Windows系統中下載并安裝Python
因為Python可以在Windows、Linux和Mac這當今三大主流的計算機系統中運行,所以接下來將詳細講解在這3種操作系統中安裝Python的方法。接下來,將首先講解在Windows系統中下載并安裝Python的過程。
(1)登錄Python官方網站,單擊頂部導航中的Downloads鏈接,出現如圖1-1所示的下載頁面。
圖1-1Python下載頁面
(2)因為當前計算機的系統是Windows系統,所以單擊“Looking for Python with a different OS? Python for”后面的Windows鏈接,出現如圖1-2所示的Windows版下載界面。
圖1-2Windows版下載界面
圖1-2所示的都是Windows系統平臺的安裝包,其中x86適合32位操作系統,x86-64適合64位操作系統。并且可以通過如下3種途徑獲取Python。
web-based installer:需要通過聯網完成安裝。
executable installer:通過可執行文件(*.exe)方式安裝。
embeddable zip file:這是嵌入式版本,可以集成到其他應用程序中。
(3)因為筆者的計算機是64位操作系統,所以需要選擇一個64位的安裝包,當前(筆者寫稿時)最新版本“Windows x86-64 executable installer”。
在如圖1-3所示的下載對話框中,單擊“下載”按鈕后開始下載。
圖1-3下載對話框界面
(4)下載成功后得到一個“.exe”格式的可執行文件,雙擊此文件開始安裝。在第一個安裝界面中勾選下面兩個復選框,然后單擊Install Now按鈕,如圖1-4所示。
圖1-4第一個安裝界面
(5)彈出如圖1-5所示的安裝進度對話框進行安裝。
圖1-5安裝進度對話框
(6)安裝完成后的界面如圖1-6所示,單擊“Close”按鈕完成安裝。
圖1-6安裝完成界面
(7)依次單擊“開始”“運行”,輸入cmd后打開DOS命令界面,然后輸入“python”驗證是否安裝成功。彈出如圖1-7所示的界面表示安裝成功。
圖1-7表示安裝成功
1.2.3在Mac系統中下載并安裝Python
在Mac OS X中都已經默認安裝了Python,開發者只需要安裝一個文本編輯器來編寫Python程序即可,并且需要確保其配置信息正確無誤。要想檢查當前使用的蘋果系統是否安裝了Python,需要完成如下工作。
(1)打開終端窗口(和Windows系統中的cmd控制臺類似)
打開“Applications/Utilities”文件夾,選擇打開里面的Terminal,這樣可以打開一個終端窗口。另外,也可以按下鍵盤中的“Command + 空格”組合鍵,再輸入terminal并按回車鍵打開終端窗口。
(2)輸入“python”命令
為了確定是否安裝了Python,接下來,需要執行命令“python”(注意,其中的p是小寫的)。如果輸出了類似于下面的內容,指出了安裝的Python版本,這表示Python已經安裝成功。最后的“>>>”是一個提示符,讓我們能夠進一步輸入Python命令。
$ python
Python 3.6.1 (default, Mar 9 2016, 22:15:05)
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin
Type "help", "copyright", "credits", or "license" for more information.
>>>
上述輸出表明,當前計算機默認使用的Python版本為Python 3.6.1。看到上述輸出后,如果要退出Python并返回終端窗口,可按Control + D組合鍵或執行命令exit()。
1.2.4在Linux系統中下載并安裝Python
在眾多開發者的眼中,Linux系統是專門為開發者所設計的。在大多數的Linux計算機中,都已經默認安裝了Python。要在Linux系統中編寫Python程序,開發者幾乎不用安裝什么軟件,也幾乎不用修改設置。要想檢查當前使用的Linux系統是否安裝了Python,需要完成如下工作。
(1)在系統中運行應用程序Terminal(如果使用的是Ubuntu,可以按下Ctrl + Alt + T組合鍵),打開一個終端窗口。
(2)為了確定是否安裝了Python,需要執行“python”命令(請注意,其中的p是小寫的)。
如果輸出類似下面這樣輸出安裝版本的結果,則表示已經安裝了Python;最后的“>>>”是一個提示符,讓我們能夠繼續輸入Python命令。
$ python
Python 2.7.6 (default, Mar 22 2014, 22:59:38)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
上述輸出表明,當前計算機默認使用的Python版本為Python 2.7.6。看到上述輸出后,如果要退出Python并返回終端窗口,可按Ctrl + D組合鍵或執行命令exit()。
要想檢查系統是否安裝了Python 3,可能需要指定相應的版本,例如嘗試執行命令python3。
$ python3
Python 3.6.0 (default, Sep 17 2016, 13:05:18)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
上述輸出表明,在當前Linux系統中也安裝了Python 3,所以開發者可以使用這兩個版本中的任何一個。在這種情況下,需要將本書中的命令python都替換為python3。在大多數情況下,在Linux系統上都默認安裝了Python。
Python開發工具介紹
在安裝Python后,接下來需要選擇一款開發工具來編寫Python程序。市面中有很多種支持Python的開發工具,下面將簡要介紹幾種主流的開發工具。
1.3.1使用IDLE
IDLE是Python自帶的開發工具,它是應用Python第三方庫的圖形接口庫Tkinter開發的一個圖形界面的開發工具,其主要特點如下所示。
跨平臺,包括Windows、Linux、UNIX和Mac OS X。
智能縮進。
代碼著色。
自動提示。
可以實現斷點設置、單步執行等調試功能。
具有智能化菜單。
當在Windows系統下安裝Python時,會自動安裝IDLE,在“開始”菜單的Python 3.x子菜單中就可以找到它,如圖1-8所示。
圖1-8 “開始”菜單中的IDLE
在Linux系統下需要使用yum或apt-get命令進行單獨安裝。在Windows系統下,IDLE的界面如圖1-9所示,標題欄與普通的Windows應用程序相同,而其中所寫的代碼是自動著色的。
圖1-9IDLE的界面
IDLE常用的快捷鍵如表1-2所示。
1.3.2使用Emacs
Emacs堪稱“無所不能”的開發工具,很多人稱之為最強大的文本編輯器。與Vim不同,Emacs沒有模式編輯器,使用Emacs就像使用Windows的記事本一樣,但Emacs比Windows的記事本的功能要強大得多。下載并安裝Emacs工具的具體流程如下所示。
(1)登錄gnu官方網站,在Windows欄目下單擊main GNU FTP server鏈接,如圖1-10所示。
圖1-10單擊main GNU FTP server鏈接
(2)在彈出的新頁面中選擇一個版本進行下載,如圖1-11所示。
圖1-11選擇一個版本
(3)下載完成后將得到一個ZIP格式的壓縮包,解壓完成后,運行Emacs所在目錄下bin目錄中的runemacs.exe文件,即可啟動Emacs工具,其界面如圖1-12所示。
圖1-12運行Emacs后的界面
認識第一段Python程序
經過本文前面內容的學習,已經了解了安裝并搭建Python開發環境的知識。
1.4.1編碼并運行
(1)打開IDLE,依次單擊File→New File,在彈出的新建文件中輸入如下所示的代碼。
print('同學們好,我的名字是——Python!')
print('這就是我的代碼,簡單嗎?')
在Python語言中,“print”是一個輸出函數,功能是,在命令行界面輸出指定的內容,和C語言中的“printf”函數、Java語言中的“println”函數類似。本實例在IDLE編輯器中的效果如圖1-13所示。
圖1-13輸入代碼
(2)依次單擊File→Save命令,將其另存為文件“first.py”,如圖1-14所示。
圖1-14另存為文件“first.py”
(3)按下鍵盤中的F5鍵,或依次單擊Run→Run Module命令運行當前代碼,如圖 1-15所示。
圖1-15運行當前代碼
(4)本實例執行后會使用函數print()輸出兩行文本,執行后的效果如圖1-16所示。
圖1-16執行效果
1.4.2其他運行方式
1.命令行運行方式
在Windows系統下還可以直接使用鼠標雙擊的方式來運行Python程序。如果通過雙擊運行上面編寫的程序文件“first.py”,可以看到一個命令行窗口首先出現,然后又關閉,由于很快,因此看不到輸出內容,這是因為程序運行結束后立即退出了。為了能看到程序的輸出內容,可以按以下步驟進行操作。
(1)單擊“開始”菜單,在“搜索程序和文件”文本框中輸入“cmd”,并按Enter鍵,打開Windows的命令行窗口。
(2)輸入文件first.py的絕對路徑及文件名,再按Enter鍵運行程序。也可以使用cd命令,進入文件“first.py”所在的目錄,如“D:lx”,然后在命令行提示符下輸入“first.py”或者“python first.py”,按Enter鍵即可運行。
2.交互式運行方式
Python程序的交互式運行方式是指一邊輸入程序,一邊運行程序。具體操作步驟如下所示。
(1)打開IDLE,在命令行中輸入如下所示的代碼。
print('同學們好,我的名字是——Python!')
按Enter鍵后即可立即運行上述代碼,執行效果如圖1-17所示。
圖1-17執行效果
(2)繼續輸入如下所示的代碼。
print('這就是我的代碼,簡單嗎?')
按Enter鍵后即可立即運行上述代碼,執行效果如圖1-18所示。
圖1-18執行效果
技術解惑
1.5.1提高開發效率——安裝文本編輯器
Geany是一款簡單的文本編輯器:它易于安裝;讓你能夠直接運行幾乎所有的程序(而無需通過終端來運行);使用不同的顏色來顯示代碼,以突出代碼語法;在終端窗口中運行代碼,讓你能夠習慣使用終端。建議使用Geany,除非你有充分的理由不這樣做。
在大多數Linux系統中,都只須執行一條命令就可以安裝Geany。
$ sudo apt-get install geany
1.5.2快速運行Hello World程序
為了編寫第一個Python程序,需要啟動Geany。為此,可以按超級(Super)鍵(俗稱Windows鍵),并在系統中搜索Geany。找到Geany后,雙擊就可以啟動它。再將其拖曳到任務欄或桌面上,以創建一個快捷方式。
接下來,創建一個用于存儲項目的文件夾,并將其命名為python_work(在文件名和文件夾名中,最好使用小寫字母,并使用下劃線來表示空格,因為這是Python采用的命名約定)。
返回Geany,依次選擇菜單“File”和“Save As”,將當前的空Python文件保存到文件夾“python_work”中,并將其命名為“hello_world.py”。擴展名“.py”告訴Geany文件包含的是Python程序。它還讓Geany知道如何運行該程序,并以有益的方式突出其中的代碼。
保存文件后,在其中輸入如下所示的一行代碼。
print("Hello Python world!")
如果在系統中安裝了多個Python版本,就必須對Geany進行配置,使其使用正確的版本。
為此,可以依次選擇菜單Build(生成)和 Set Build Commands(設置生成命令),此時將看到文字Compile(編譯)和Execute(執行),它們旁邊都有一個命令。在默認情況下,這兩條命令都是python,要讓Geany使用命令python3,必須做相應的修改。
如果在終端會話中能夠執行命令python3,請修改編譯命令和執行命令,讓Geany使用Python 3解釋器。為此,將編譯命令修改成下面這樣。
python3 -m py_compile "%f"
必須完全按上面的代碼顯示的那樣輸入這條命令,確保空格和大小寫都完全相同。
將執行命令修改成下面這樣。
python3 "%f"
同樣,務必確保空格和大小寫都完全與顯示的相同。圖1-19顯示了該如何在Geany中配置這些命令。
現在開始運行程序hello_world.py,依次選擇菜單Build和Execute,并單擊Execute圖標(兩個齒輪)或按F5鍵后將彈出一個終端窗口,其中包含如下所示的輸出。
Hello Python world!
------------------
(program exited with code: 0)
Press return to continue
如果沒有看到這樣的輸出,請檢查你輸入的每個字符。你是不是將print的首字母大寫了?是不是遺漏了引號或括號?編程語言對語法的要求非常嚴格,只要你沒有嚴格遵守語法,就會出錯。
圖1-19在Linux中配置Geany,使其使用Python 3
1.5.3在終端會話中運行Python代碼
開發者可以打開一個終端窗口并執行命令python或python3,再嘗試運行Python代碼段。在檢查Python版本時,你就這樣做過。下面再次這樣做,但是會在終端會話中輸入如下代碼行:
>>> print("Hello Python interpreter!")
Hello Python interpreter!
>>>
消息將直接轉出到當前終端窗口中。請不要忘記,要關閉Python解釋器,需要按Ctrl + D組合鍵或執行命令exit()。
-
編程語言
+關注
關注
10文章
1952瀏覽量
35625 -
C++
+關注
關注
22文章
2116瀏覽量
74525 -
python
+關注
關注
56文章
4821瀏覽量
85779
原文標題:太慘!學Python方法用錯,直接從入門到放棄!
文章出處:【微信號:rgznai100,微信公眾號:rgznai100】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論