有沒有一種標準的方法來確保Python腳本將被python2而不是python3解釋?在我的發行版中,我可以使用#!/ usr/bin/env python2作爲shebang,但似乎並非所有發行版都發布了「python2」。我可以明確地調用python的特定版本(例如2.6),但是這會排除那些沒有該版本的人。有沒有一種標準的方法來確保Python腳本將被python2而不是python3解釋?
在我看來,這將越來越成爲一個問題,當發行版將開始把python3作爲默認的python解釋器。使用sys模塊
如果有必要,正如kwatford在他的評論中指出的那樣,在安裝時在包的'setup.py'腳本中包括一個檢查,或者從'setuptools','Distribute','pip'等。通常會將腳本的shebang行更改爲指向安裝的Python實例。 – 2010-08-27 22:21:45
恕我直言,總是應該有可用的符號鏈接'python2'爲了使未來,[明確區別shebangs](http://unix.stackexchange.com/questions/26573/python-python2-or-python-python3-how- python-py2k) – 2011-12-12 23:41:09
@Grzegorz:Python PEP 394對該主題是開放的,並且可能在未來的Python 2更新中實現:http://bugs.python.org/issue12627 – 2011-12-13 00:15:55