2010-07-09 47 views
4

什麼是寫Python代碼目前的規則,將通過清潔通過2to3,什麼是,似乎是最適合於寫,不會成爲永遠的版本陷入代碼2.如何讓Python 3準備好?

我從閱讀的做法SciPy/NumPy論壇認爲「100%測試覆蓋率」(單元測試)對很多人都很重要,我不確定這是否適用於每個人。當然,有一套合理的單元測試可以在轉換後嘗試使用代碼,這似乎是一個理性的步驟。

還有其他的事嗎?如果他們正在編寫2.x代碼,他們希望在2to3過程中「乾淨」地完成,那麼嫺熟的Pythonistas是幹什麼的。

我在尋找「[不要]做這個」的具體實例以及一些更一般的「最佳實踐」,但是「做與不做」的具體實例是有幫助的。

我們假設最終我們需要的框架,庫(Django,SciPy/NumPy)和其他所有C擴展都移植到Python3中,並且我正在問如何編寫和維護您編寫的純Python語言代碼你自己。

更新:我真正想要的可能是「風格指南」以及每個人都已經遠離的已棄用功能列表。我對Python 1.5感到吃驚,並且轉向2.0,然後還沒有真正跟隨2.5/2.6時代的大部分,使用它們,但是真的我的代碼更多的是2.1時代。

+0

不明飛行物對許多人來說也很重要,並且像100%的測試覆蓋率一樣,它們非常難以捉摸,可能是神話。 – 2010-07-09 21:08:03

+0

同意。讓我們稱之爲:100%超過零。 :-) – 2010-07-11 16:59:06

+1

NumPy終於(截至今日)Py3準備就緒。 – 2010-07-11 16:59:23

回答

2

我會說:

  • 閱讀 「What's new for Python 3.0」。非常豐富。
    • 特別是,如果您關心Unicode或文本編碼,請花時間瞭解3.x的變化。這可能是Python 3.x改變的一個棘手問題。
  • 獲取Python 2.6或2.7,並使用-3標誌運行您的代碼。它會告訴你關於代碼中需要改變的事情。
  • 在使用第三方軟件包之前,請檢查他們是否有Python 3.x版本。如果沒有,請查看軟件包網站,郵件列表,版本控制存儲庫等,瞭解軟件包的開發活動是否積極,以及是否有一個對Python 3.x支持的路線圖。
  • 下載Python 3.x並試用!無可否認,如果您關心的是當前依賴於尚未支持Python 3.x的軟件包(例如wxPython或Django)的代碼,那麼這可能不太實際。
+0

這真的是一個非常好的答案。謝謝。 – 2010-07-19 14:44:11