我已經在我的Mac中安裝了python 3.2。在我運行/Applications/Python 3.2 /更新Shell Profile.command和後,我感到困惑的是,當我在終端輸入python -V它說Python 2.6.1,我該如何更改默認的python版本?如何更改默認的python版本?
回答
這可能是向後兼容的理想選擇。
Python3打破向後兼容性,調用'python'的程序可能期望python2。你可能有很多程序和腳本,你甚至都沒有意識到哪些期望python = python2,並且改變它會破壞這些程序和腳本。
您可能正在尋找的答案是您不應該更改此。
但是,您可以在您的shell中創建一個自定義別名。你這樣做的方式取決於殼,但也許你可以做alias py=python3
如果你困惑於如何啓動最新版本的Python,它至少在Linux上的情況是python3
離開你python2
安裝完好(由於上述兼容性原因);因此您可以使用python3
命令啓動python3。
這是有用的信息,但問題是「我怎樣才能更改默認的Python版本「。我們可以添加一些東西來幫助人們試圖做到這一點? – dmeyerson 2016-09-02 14:27:52
根據快速谷歌搜索,此更新僅適用於您打開的當前shell。它可以通過鍵入python3來解決,因爲mac和linux足夠類似於這樣的事情。 Link to the result of google search.
此外,正如ninjagecko所言,大多數程序還沒有更新到3.x,所以將默認python設置爲3.x會破壞應用程序中使用的許多python腳本。
更改「默認」的Python通過把它提前了系統的Python的路徑,例如:
export PATH=/usr/local/bin:$PATH
我的假設是,通過這樣做你可以在Mac上破壞某些東西。由於有很多使用「python」別名的程序和腳本。如果突然間,由於PATH的優先級改變,他們開始指向Python3而不是Python2--這可能會破壞某些東西。潛在的整個操作系統......這是我的假設,但沒有經過測試。 – Aivoric 2015-07-31 08:35:04
任何系統軟件都將使用Python提供的系統的完整路徑。 – 2015-07-31 18:52:50
在Mac OS X上使用的python.org安裝程序,你顯然有,你需要用python3
調用Python 3,而不是python
。這是目前爲Python 2版本保留的。您也可以使用python3.2
來專門調用該版本。
$ which python
/usr/bin/python
$ which python3
/Library/Frameworks/Python.framework/Versions/3.2/bin/python3
$ cd /Library/Frameworks/Python.framework/Versions/3.2/bin/
$ ls -l
total 384
lrwxr-xr-x 1 root admin 8 Apr 28 15:51 [email protected] -> 2to3-3.2
-rwxrwxr-x 1 root admin 140 Feb 20 11:14 2to3-3.2*
lrwxr-xr-x 1 root admin 7 Apr 28 15:51 [email protected] -> idle3.2
-rwxrwxr-x 1 root admin 138 Feb 20 11:14 idle3.2*
lrwxr-xr-x 1 root admin 8 Apr 28 15:51 [email protected] -> pydoc3.2
-rwxrwxr-x 1 root admin 123 Feb 20 11:14 pydoc3.2*
-rwxrwxr-x 2 root admin 25624 Feb 20 11:14 python3*
lrwxr-xr-x 1 root admin 12 Apr 28 15:51 [email protected] -> python3.2-32
lrwxr-xr-x 1 root admin 16 Apr 28 15:51 [email protected] -> python3.2-config
-rwxrwxr-x 2 root admin 25624 Feb 20 11:14 python3.2*
-rwxrwxr-x 1 root admin 13964 Feb 20 11:14 python3.2-32*
lrwxr-xr-x 1 root admin 17 Apr 28 15:51 [email protected] -> python3.2m-config
-rwxrwxr-x 1 root admin 25784 Feb 20 11:14 python3.2m*
-rwxrwxr-x 1 root admin 1865 Feb 20 11:14 python3.2m-config*
lrwxr-xr-x 1 root admin 10 Apr 28 15:51 [email protected] -> pythonw3.2
lrwxr-xr-x 1 root admin 13 Apr 28 15:51 [email protected] -> pythonw3.2-32
-rwxrwxr-x 1 root admin 25624 Feb 20 11:14 pythonw3.2*
-rwxrwxr-x 1 root admin 13964 Feb 20 11:14 pythonw3.2-32*
如果您也從python.org安裝一個Python 2,這將有(除2to3的)沒有重疊的文件名類似的框架bin目錄。
$ open /Applications/Python\ 2.7/Update\ Shell\ Profile.command
$ sh -l
$ echo $PATH
/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/3.2/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
$ which python3
/Library/Frameworks/Python.framework/Versions/3.2/bin/python3
$ which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
$ cd /Library/Frameworks/Python.framework/Versions/2.7/bin
$ ls -l
total 288
-rwxrwxr-x 1 root admin 150 Jul 3 2010 2to3*
lrwxr-x--- 1 root admin 7 Nov 8 23:14 [email protected] -> idle2.7
-rwxrwxr-x 1 root admin 138 Jul 3 2010 idle2.7*
lrwxr-x--- 1 root admin 8 Nov 8 23:14 [email protected] -> pydoc2.7
-rwxrwxr-x 1 root admin 123 Jul 3 2010 pydoc2.7*
lrwxr-x--- 1 root admin 9 Nov 8 23:14 [email protected] -> python2.7
lrwxr-x--- 1 root admin 16 Nov 8 23:14 [email protected] -> python2.7-config
-rwxrwxr-x 1 root admin 33764 Jul 3 2010 python2.7*
-rwxrwxr-x 1 root admin 1663 Jul 3 2010 python2.7-config*
lrwxr-x--- 1 root admin 10 Nov 8 23:14 [email protected] -> pythonw2.7
-rwxrwxr-x 1 root admin 33764 Jul 3 2010 pythonw2.7*
lrwxr-x--- 1 root admin 11 Nov 8 23:14 [email protected] -> smtpd2.7.py
-rwxrwxr-x 1 root admin 18272 Jul 3 2010 smtpd2.7.py*
我使用OS X 10.7.5和Python 3.4.2。如果你鍵入python3
以及你想要運行什麼,它將使用python 3運行它。例如 pyhton3 test001.py
。我運行了一個名爲test001的測試程序。我希望這有幫助。
老問題,但也可以使用:
virtualenv --python=python3.5 .venv
source .venv/bin/activate
當然,但如果您沒有可執行文件(例如python3.5),此解決方案無法正常工作。 – 2016-11-23 13:22:56
我認爲這涵蓋了http://stackoverflow.com/questions/5506110/is-it-possible-to-install-another-version-of-python-to-virtualenv – FreshPow 2016-11-28 22:25:14
- 1. Python如何將默認版本從python 3.5更改爲python 2.7
- 2. 如何更改默認minitest版本
- 3. 如何更改EMACS 23使用的默認python版本?
- 4. 更改Android Studio的默認sdk版本
- 5. Butchered my python - 如何更改多個安裝的默認Python版本?
- 6. 更改Ned Batchelder的覆蓋工具的默認版本的python
- 7. 如何更改默認版權模板
- 8. 更改默認版本Swagger位置
- 9. ISPConfig更改默認版本PHP
- 10. 如何更改默認的python路徑?
- 11. 更改XCode 6.1(Yosemite)中的默認Python 2.x版本
- 12. 在Debian中更改默認的python版本 - 庫導入問題
- 13. 更改默認的Python版本,從2.4到2.6
- 14. 如何更改我的項目的默認gemset和ruby版本?
- 15. 如何在我的Mac Snow Leopard中更改默認的Python版本?
- 16. 如何更改使用的默認Rails版本?
- 17. 如何更改Clojure或Lein的Clojure默認版本?
- 18. 如何使用Selenium webdriver與Ruby更改Firefox的默認版本?
- 19. 如何更改啓動的默認xcode版本...?
- 20. 如何將PHP的默認版本從4更改爲5?
- 21. 如何將pip3的默認版本從python3.5更改爲python3.6
- 22. 如何將Gurobi默認Python版本2.7.8更改爲我已經安裝的Python版本3.5 Windows64(Spyder中)
- 23. 將默認Python版本從2.6.6更改爲2.7,並配置django
- 24. 添加參考時如何更改「特定版本」默認值?
- 25. 如何在Anaconda中將默認Python版本從3.5更改爲2.7
- 26. 如何更改Enthought Canopy的Python版本?
- 27. pip與默認的python版本OSX
- 28. uiswitch默認文本更改
- 29. 如何將默認的maven surefire插件更改爲更高版本?
- 30. 我應該將我的默認Python版本更改爲最新的Python版本嗎?
相關:http://stackoverflow.com/a/18425592/939986 – 2015-12-04 18:38:50