2010-05-01 77 views
3

我開始一個新的Python web項目。對於大多數框架,每個人都會涌向最新版本,但是,這似乎並不適用於Python 3.x。應該使用哪個版本的Python?

哪個版本的Python應該全新項目使用?

+0

現在,您將與v2.6的庫和服務具有最大的兼容性。如果答案是v3,我相信它會很好,但看看Windows XP取代速度有多快;) – msw 2010-05-01 19:13:29

回答

3

很多第三方Python模塊仍然需要Python 2.x(例如numpy,scipy)。如果你會使用其中的任何一個,或者如果你還不知道你需要什麼模塊,並希望保持你的選擇開放,那麼現在就堅持使用Python 2.x。

如果您知道您需要使用Python 3.x的所有模塊,請使用它。

0

我對Google App Engine項目使用2.5,對我的Django項目使用2.6。

2

對於一個web項目,選擇了您的託管服務提供商支持的python版本。

如果你很幸運有一個專用的服務器,然後選擇你選擇的框架最好支持的任何版本。 python 3仍然不被主要的web框架支持,所以python 2.6似乎是最好的選擇。如果你的項目託管在共享主機上,你將不得不堅持主機上安裝的python版本(個人而言,我堅持使用python 2.4.4,希望我的託管服務提供商能夠升級到2.5或2.6,這將不會很快來臨)

1

我推薦Python 2.6,因爲它具有Python 3.x的一些功能,但它仍然保留了Python 2.5中的相同功能。雖然有些人可能會爭辯說Python 3.x更好(很可能是因爲重組數量巨大,並且所有字符串默認都是Unicode),但現在使用的大多數Python代碼仍然適用於Python 2.x.我會說堅持Python 2.6,直到你需要Python 3.x. :)

1

對於那些「沒有包袱」(意思是沒有現有的Python代碼或應用程序,沒有尚未移植到Python 3的庫/依賴項等),Python 3是一個很好的開始。但是另一方面,雖然Python 3在這裏,但大多數工業世界仍然運行在Python 2上,所以如果你確實需要創建一個應用程序來使用可用的庫和包來運行,那就是在這裏你應該開始。如果是這樣,請使用任何版本2.6或更高版本,因爲它們具有從3.x反向移植的功能,可幫助您以3.x類型的方式開始思考。 :-)如果你學習了一個,很容易適應另一個(反之亦然)。

儘管Python 3.x與2.x向後兼容,但Python語法不會無法識別......幾乎所有內容都與2.x非常相似,但打印更改時很容易破壞代碼從一個聲明到一個函數。所以現在不要擔心Python 3。

另外,僅僅因爲編號的原因,不要因爲認爲Python 2已經以任何方式過時而被愚弄,也不能順從時間線。換句話說,Python 2.7將比Python 3.0和3.1都更新。 (3.2將不會在今年年底之前發佈。)同樣,Python 2還沒有EOL'd - 2.x和3.x都在積極開發。所以,像其他人一樣,我建議你從任何Python 2.x開始。

在相關說明中,我讓發佈者在我的書的最新打印(第5 !!)中添加了兩個新附錄(C & D),其中一個關於Python 3.x,另一個關於重要性2.6以及它在幫助用戶轉換到Python 3方面發揮的作用。

最後,我一直在談論Python 3,並介紹了Python 2的主要區別。幾個月前的one that I gave a PyCon包括幻燈片preso。

相關問題