2010-11-04 72 views
0

我是一名新的Mac(Snow Leopard)用戶,我發現Python已預裝在Mac OS X中。Mac OS X預裝Python和Python.org之間的區別是什麼?Mac OS X預裝Python和Python.org預裝Python有什麼區別?

如果我從Python.org安裝一個,它會破壞什麼?它會是多餘的嗎?

編輯
這將是一個很好的理由,更喜歡Python.org版本,比較相同的版本號頭對頭?

+2

可能想看看[這個問題](http://stackoverflow.com/questions/1541776/upgrade-python-to-2-6-on-mac)和[這個問題](http:// stackoverflow.com/questions/3723183/is-it-safe-to-replace-macos-x-default-python-interpreter)。他們都有這方面的一些很好的信息。典型的解決方案通常是在系統旁邊安裝一個更新的版本,但這可能取決於你想要這樣做的原因。 – eldarerathis 2010-11-04 01:03:17

+0

@elderathis:是的,這實際上是我想要得到的 - 原因是喜歡使用Python.org而不是Mac預裝版本。讓我編輯我的問題。 – Kit 2010-11-04 01:13:25

+0

「相同的版本號」。它們是相同的版本。他們做同樣的事情。他們是從同一個來源構建的。你在問什麼? – 2010-11-04 02:11:27

回答

0

不知道你正在比較哪個版本是不可能的。您最好在默認的OS X安裝上執行python --version,然後檢查該版本的發行說明到後續版本。我的猜測(我沒有OS X)是,你可能運行2.4.x或2.5.x.從2.x版本樹上的2.4.x向前版本將會有很少的迴歸差異。 Python 3.x引入了語法更改,這會破壞一些現有的代碼。也許最明顯的變化是print在3.0中成爲函數,而在2.x中仍然是一個聲明。

一般來說,在2.x中,語法只是增強了,沒有被破壞。庫中的更改將更多(即md5模塊已棄用2.6,贊成hashlib模塊)。

+0

OS X 10.6附帶Python 2.6(和2.5)。 – 2010-11-04 05:17:28

3

Mac OS X 10.6(Snow Leopard)中蘋果提供的Python 2.6目前是2.6.1(而且,根據以前的OS X版本,Apple不太可能會在10.6.x版本中將其更新爲新版本維護版本)。 Python 2.6的最新版本(可能是最終版本)是2.6.6。因此,如果您安裝了最新的python.org版本,您將獲得大量在Python 2.6生命週期中進行的錯誤修復。還有一些其他的不同之處。 python.org 2.6.x版本構建爲僅32位。 Apple支持的版本構建爲32位/ 64位通用版本,並且默認情況下會盡可能在64位模式下運行。在安裝具有依賴其他第三方庫的C擴展模塊的第三方軟件包時,任何一個都會導致一些問題。在所有組件中至少需要一個通用體系結構(32位,i386或64位,x86_64)。另一個區別是Apple 2.6版本與Tk 8.5的新版本聯繫在一起;有報告顯示10.6附帶的IDLE以及可能與其他使用Tkinter的應用程序有關的問題。如果你打算使用其中任何一種,你可能會更適合與Tk 8.4相關的python.org 2.6。

在OS X上,安裝多個Python版本即使是相同主版本也特別容易和常見。如果您安裝了python.org版本,默認情況下,安裝程序將修改您的shell搜索PATH,以便首先找到python.org版本。它也將通過絕對路徑/usr/local/bin/python2.6提供。 Apple提供的版本將保持爲/usr/bin/python2.6

僅供參考:請注意,Python 2.7已經發布,並且可以從python.org獲得它的OS X安裝程序。一個新的,不是向上兼容的Python版本Python 3也是可用的(目前3.1.2和3.2在幾個月內即將推出),並且預計將逐漸取代Python 2,因爲新功能只被添加到Python 3中

+0

Python.org爲Mac OS X提供x86-64'dmg'. – Kit 2010-11-14 03:18:52

+0

...但只適用於Python 2.7和即將發佈的3.2版本,而不是2.6。 – 2010-11-14 03:35:13

相關問題