python中#!/usr/bin/python與#!/usr/bin/env python的區別


目的是在運行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-*- 

 

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM