介紹
我們現在來看看如何在Python中運行傳統的”Hello world”程序。這會教你如何寫、保存以及運行Python程序。
有兩種辦法來運行您的Python程序——使用交互式的解釋器提示符或者源代碼文件。我們現在來分別看一看這兩種方法。
使用解釋器提示符
在命令提示符中輸入python來打開解釋器。
那些在GNU/Linux與BSD上同時安裝了Python 3.x與Python 2.x的用戶可能需要輸入python3。
而對於Windows用戶而言,如果您在PATH環境變量里正確設置的話,也可以在命令行界面打開解釋器。
要在Windws里打開命令行,在開始菜單中點擊”運行”,在彈出的對話框中輸入cmd並按回車。現在在DOS提示符下,你可以隨時開始使用python。
如果您使用IDLE,依次點擊開始菜單 → 程序 → Python 3.0 → IDLE (Python GUI)。
現在請輸入print('Hello World')並按下回車鍵。您應該能看到輸入單詞Hello World。
$ python Python 3.0b2 (r30b2:65106, Jul 18 2008, 18:44:17) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> print('Hello World') Hello World >>>
您可以注意到這里Python立刻返回給輸出內容! 剛剛您輸入的是一個簡單的Python 語句。我們(毫無懸念地)使用print來輸出提供給它的任何值。這里,我們輸入了文字Hello World,所以它被提示符輸出到熒幕上。
- 如何退出解釋器提示符
- 如何您使用IDLE或是在GNU/Linux或BSD的shell上,您可以按下鍵盤上的 ctrl-d鍵或輸入 exit()后按下回車(注意:請別忘記那對括號)來退出解釋器。如果您使用Windows命令行提示符,請按下 ctrl-z並按下回車。
選擇文本編輯器
在我們講到用源代碼文件寫Python程序前,我們需要選擇一個編輯器來編輯它們。作出這樣的選擇十分有必要。您不得不如同選擇一輛車那樣慎重地選擇編輯器。一個好的編輯器能夠幫助您更容易的寫Python程序,讓您感到旅途愉快,還能讓您更快更安全地到達目的地(完成目標)。
其中最基本的要求是 語法高亮, 這讓您Python程序的不同部分使用不同的色彩,這樣您能夠”看見”他們明白他們如何運作。
如果您使用Windows,那么我建議您使用IDLE。IDEL能夠提供語法高亮,並且有許多其他功能例如允許您在其中運行程序。必須提醒的是, 不要使用記事本——這實在不是一個明智的選擇,因為它無法提供語法高亮,此外尤其重要的是它不支持文字縮進——在后面會提到它的重要性。好的編輯器如IDLE(VIM也是)能夠自動的幫助完成它。
如果您使用GNU/Linux或FreeBSD,您會有許多選擇。如果正要開始做編程,您可能願意嘗試geany。它具備圖形用戶界面以及編譯、運行程序的按鈕,讓您更省心。
如果您是一位富有經驗的程序員,那么想必您一定在使用Vim或是Emacs。自不必多說,它們是最強大的編輯器,能夠在您寫Python程序時幫上更多。我個人使用Vim最多。而如果您是個剛起步的程序員,您也可以試試我最喜歡的編輯器之一的Kate。假使您正打算花時間如何使用Vim或Emacs,我強烈推薦您學會其中之一,它必能使您受益匪淺。
在這本書中,我們將使用 IDLE作為編輯器和集成開發環境。IDLE在Windws與Mac OS X的Python安裝包中默認已安裝。同時,在GNU/Linux與BSD的各個倉庫中也有對應的包。
我們會在下一節中瀏覽IDLE的使用方法。更多的細節,請參考IDLE文檔。
如果您仍堅持想探尋其他編輯器選擇,請看Python編輯器列表並作出選擇。您也可以選擇IDE(集成開發環境)。請看支持Python的IDE列表 以參考更多信息。一旦正式開始寫大型Python程序,IDE確實有非常大的幫助。
請允許我再重復一遍,請選擇一個合適的編輯器——它能讓Python程序編寫更容易、更有樂趣。
- 致Vim用戶
- 這里有一篇不錯的介紹如何 把Vim打造成強大的Python ID,John M Anderson著.
- 致Emacs用戶
- 這里也有一篇不錯的介紹如何 把Emacs打造曾強大的Python IDE,Ryan McGuire著.
使用源代碼
現在讓我回到編寫程序。在學習任何一個新語言前,都有這樣一個寫『Hello World』的程序——只是在運行時顯示『Hello World』. 如Simon Cozens [1]所說,這是“向編程的神念咒語來幫助您更好的學習這項語言。”
打開您選擇的編輯器,輸入下面的程序並將之保存為helloworld.py。
如果您在使用IDLE,點擊文件 → 新窗口,接着輸入下列程序。再點擊文件 → 保存,
#!/usr/bin/python #Filename: helloworld.py print('Hello World')
打開shell(GNU Linux終端或DOS提示符)來運行程序,輸入命令python helloworld.py。(在Windows下,您耶可以在文件夾內找到程序,然后在命令行輸入python后把該文件拖拽上去)。這會在python后自動添加文件路徑。
如果您使用IDLE,使用菜單運行 → 運行模塊 或者使用鍵盤快捷鍵F5。
輸出如下
$ python helloworld.py Hello World
如果您也看到如上的輸出,那么恭喜!——您已經成功運行了第一個Python程序。
如果您遇到錯誤,請完全按照以上程序的代碼重新輸入程序。請注意Python對大小寫敏感,例如print和Print是不同的——請注意前者的小寫p和后者的大寫P。另外,請確保每一行的第一個字符前面沒有空格或者制表符——我們將在后面解釋重要性。
關於shebang,這里有一點需要注意。如果您是Windows用戶,那么您可能需要改成如下
#!C:\Python31\python.exe
另外GNU/Linux和Unix用戶要改成如下
#!/usr/local/bin/python3.1
標准的是這樣
#!/usr/bin/env python
然而我最近在一家提供遠程主機服務那里注冊,使得我必須在python腳本里”寫死”正確的路徑。
它如何工作
讓我們先來看程序的前兩行。這些被稱為『注釋』——任何在#符號右邊的都是注釋,同時也對程序的閱讀者來說非常重要。
除了在第一行外,Python不使用任何注釋中的內容。它被稱作shebang——源文件的開頭是#!緊跟着程序的路徑,這告訴您的GNU/Linux或Unix系統在執行該程序時應該使用指定的解釋器。這將會在下面一節中更詳細的解釋。請注意您總是可以通過顯示指定各平台上調用的解釋器來執行程序。
- 重要
- 在您的程序中適當地使用注釋來解釋程序中重要地細節——這對程序的閱讀者來說很有用,使得他們容易地理解程序做些什么。記住,那個人很可能是6個月后的您自己!
在注釋后面是一段Python語句。這里我們調用了print函數來顯示文字'Hello World'。我們會在后面的章節學習有關函數,現在您只需要了解不論在括號內填寫什么,都會被打印出來。以上面的例子來說,'Hello World'表示一個字符串——不用擔心,我們將會在后面再詳細介紹這些術語。
可執行的Python程序
這部分像程序的第一行那樣,可能對除了Windows用戶以外的GNU/Linux或者Unix用戶來說更有興趣。首先,我們需要使用chmod命令來賦予程序執行的權限,接着執行源程序。
$ chmod a+x helloworld.py $ ./helloworld.py Hello World
這里chmod命令通過給予系統中全部用戶(all)執行(exelute)權限,來改變(chage)文件的模式(mode)。接着,我們直接指定源文件的運行路徑來執行。使用.來表示程序位於當前目錄。
更有趣的是,您可以將文件重命名為helloworld,然后使用./helloworld執行;由於系統通過文件中第一行知道該使用哪個解釋器來執行它,所以程序依舊有效。
如果您不知道Python程序的位置呢?那么,您可以使用GNU/Linux或Unix系統中的特殊程序env,只要把程序中的第一行改成
#!/usr/bin/env python
env會找到Python解釋器並執行程序。
到這里,我們只要知道程序的確切位置就可以運行它。那么如何在任何位置運行它呢?您可以通過把它加入到PATH環境變量中的路徑里去來達到效果。不管您何時運行程序,系統會在PATH環境變量里設置的路徑中尋找並運行之。我們只需要把上面的程序復制到PATH中列出的目錄中任何一個中去即可。
$ echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/swaroop/bin $ cp helloworld.py /home/swaroop/bin/helloworld $ helloworld Hello World
我們可以使用echo命令與在變量前加上$符號來顯示PATH的值。這里看到/home/swaroop/bin是PATH變量中的一個目錄,其中swaroop是我在系統中的用戶名。通常在您的系統中也有類似的目錄。順帶一提,您可以在PATH中加入自己的目錄——通過執行PATH=$PATH:/home/swaroop/mydir,其中'/home/swaroop/mydir'是我想加入PATH變量的路徑。
在您想任何時間任何地點執行自己寫的腳本時,這個辦法非常有用。就如同在GNU/Linux或者DOS提示符中創建cd和其他命令那樣。
- 警告
- 對Python來說,程序和腳本或者軟件指的都是同一件東西。
獲取幫助
如果您需要Python中任何函數或語句的快速幫助信息,可以使用內置的help功能。在解釋器提示符下顯得尤其有幫助。例如,執行help(print)——會在屏幕上顯示有關輸出信息的print函數的相關幫助。
- 提示
- 按 q來退出幫助
類似地,您可以獲取有關Python的幾乎一切的信息。使用help()來查看help自身的相關信息!
如果您想了解操作語句return,您只需把它們放進引號,如help('return'),這樣Python不會混淆我們要做的目的。
總結
現在您應該輕松地能夠寫、保存和執行Python程序。您是一位Python用戶,那么我們來看看更多的Python概念吧
參考:
- ↑ The author of the amazing ‘Beginning Perl’ book

