您可能知道Windows合規工具,它可以幫助人們知道任何版本的MS OS是否支持他們的代碼。有沒有辦法知道我的代碼支持哪些版本的Python?
我正在尋找類似於Python的東西。
我正在用Python 2.6編寫一個庫,我意識到它與Python 2.5不兼容,因爲使用了with關鍵字。
我想知道是否有一種簡單而自動的方式來避免將來出現這種情況。
我也對類似知道哪些操作系統支持感興趣。
感謝您的幫助
您可能知道Windows合規工具,它可以幫助人們知道任何版本的MS OS是否支持他們的代碼。有沒有辦法知道我的代碼支持哪些版本的Python?
我正在尋找類似於Python的東西。
我正在用Python 2.6編寫一個庫,我意識到它與Python 2.5不兼容,因爲使用了with關鍵字。
我想知道是否有一種簡單而自動的方式來避免將來出現這種情況。
我也對類似知道哪些操作系統支持感興趣。
感謝您的幫助
針對a previous question about this,我寫pyqver。如果您有任何改進,請隨時分享和貢獻!
我建議你使用自動化測試而不是代碼分析工具。
請注意,Python標準庫中存在細微的行爲變化,您的代碼可能依賴或可能不依賴。例如httplib
:上傳文件時,通常將數據設置爲str
。在Python 2.6中,可以爲賦予流對象,而不是(對於大於1GB的文件有用),但是在Python 2.5中,您將遇到錯誤。
一套全面的單元測試和集成測試將更加可靠,因爲他們測試你的程序實際上工作在Python版本爲x.y
$ python2.6 tests/run_all.py
.................................
33 tests passed
[OK]
你是Python 2.6兼容的。
$ python2.4 tests/run_all.py
...........EEE.........EEE.......
27 tests passed, 6 errors
[FAIL]
你不的Python 2.4兼容。
的Python 2.5仍然可以保存,因爲它可以用關鍵字的使用:
from __future__ import with_statement
你寫它。 **簡單的方法**是知道你在做什麼。 – SilentGhost 2009-07-13 08:22:43