在Python的互動式命令列寫程式,好處是一下就能得到結果,壞處是沒法保存,下次還想運行的時候,還得再敲一遍。
所以,實際開發的時候,我們總是使用一個文字編輯器來寫代碼,寫完了,保存為一個檔,這樣,程式就可以反復運行了。
現在,我們就把上次的’hello, world’程式用文字編輯器寫出來,保存下來。
那麼問題來了:文字編輯器到底哪家強?
推薦一款文字編輯器:Notepad++,免費使用,有中文介面:
請注意,用哪個都行,但是絕對不能用Word和Windows自帶的記事本。Word保存的不是純文字檔,而記事本會自作聰明地在檔開始的地方加上幾個特殊字元(UTF-8 BOM),結果會導致程式運行出現莫名其妙的錯誤。
安裝好文字編輯器後,輸入以下代碼:
print(‘hello, world’)
注意print前面不要有任何空格。然後,選擇一個目錄,例如C:\work,把檔保存為hello.py,就可以打開命令列視窗,把目前的目錄切換到hello.py所在目錄,就可以運行這個程式了:
C:\work>python hello.py
hello, world
也可以保存為別的名字,比如first.py,但是必須要以.py結尾,其他的都不行。此外,檔案名只能是英文字母、數位和底線的組合。
如果目前的目錄下沒有hello.py這個檔,運行python hello.py就會報錯:
C:\Users\IEUser>python hello.py
python: can’t open file ‘hello.py’: [Errno 2] No such file or directory
報錯的意思就是,無法打開hello.py這個檔,因為檔不存在。這個時候,就要檢查一下目前的目錄下是否有這個檔了。如果hello.py存放在另外一個目錄下,要首先用cd命令切換目前的目錄。
直接運行py檔
有同學問,能不能像.exe檔那樣直接運行.py文件呢?在Windows上是不行的,但是,在Mac和Linux上是可以的,方法是在.py檔的第一行加上一個特殊的注釋:
#!/usr/bin/env python3
print(‘hello, world’)
然後,通過命令給hello.py以執行許可權:
$ chmod a+x hello.py
就可以直接運行hello.py了,比如在Mac下運行:
小結
用文字編輯器寫Python程式,然後保存為尾碼為.py的檔,就可以用Python直接運行這個程式了。
Python的交互模式和直接運行.py檔有什麼區別呢?
直接輸入python進入交互模式,相當於啟動了Python解譯器,但是等待你一行一行地輸入原始程式碼,每輸入一行就執行一行。
直接運行.py檔相當於啟動了Python解譯器,然後一次性把.py檔的原始程式碼給執行了,你是沒有機會以交互的方式輸入原始程式碼的。
用Python開發程式,完全可以一邊在文字編輯器裡寫代碼,一邊開一個互動式命令視窗,在寫代碼的過程中,把部分代碼粘到命令列去驗證,事半功倍!前提是得有個27’的超大顯示器!