目的是在執行python指令碼的時候告訴作業系統我們要用python直譯器去執行py指令碼
所以我們在第一句往往會寫如下兩句中的其中一句:
#!/usr/bin/python
或
>#!/usr/bin/env python
就是說在沒有在執行程式時指出用什麼程式執行py指令碼時,系統會去呼叫python程式來執行。
舉個簡單的例子: 我們在linux環境下寫一個最簡單的python指令碼 vim hello.py
#!/usr/bin/python
或者#!/usr/bin/env python
print ‘ helloworld!
編寫完成後正常我們在會輸入命令: python hello.py來執行這個指令碼,但是因為有了第一行的宣告,所以我們只要是給這個py指令碼新增可執行許可權,那我們就可以直接 ./hellp.py 來執行了。
在這裡還是要推薦下我自己建的Python開發學習群:725479218,群裡都是學Python開發的,如果你正在學習Python ,小編歡迎你加入,大家都是軟體開發黨,不定期分享乾貨(只有Python軟體開發相關的),包括我自己整理的一份2018最新的Python進階資料和高階開發教程,歡迎進階中和進想深入Python的小夥伴
!/usr/bin/python與#!/usr/bin/env python的區別是?
明白了寫第一句語句的初衷後,那就該分析一下兩者的區別了:
.#!/usr/bin/python的意思是說去/usr/bin/目錄下找python去執行
.#!/usr/bin/env python 的意思是在#!/usr/bin/env中找到python的安裝路徑,然後去執行它,這個可執行的python路徑不管是不是在/usr/bin下,用法比較靈活,而#!/usr/bin/python就寫成了絕對路徑,只能去/usr/bin下找。
結論:推薦使用 #!/usr/bin/env python
另外解決中文輸出的問題,應該在第二行制定編碼位utf-8,這樣就解決了中文報錯的問題
即,在py指令碼開頭我們應該寫如下兩句語句來指定執行環境和編碼:
#!/usr/bin/env python
#-*-coding:utf-8-*-