我有一個python異常微妙的問題。 我的軟件目前在多個平臺上運行,我仍然旨在與py2.5兼容,因爲它位於羣集中,其中更改版本將成爲主要工作。異常處理與多個python版本
其中一個(debian)系統最近從2.6更新到2.7,並且一些代碼塊會從底層C部分拋出奇怪的異常。然而,這是從來沒有這樣的情況下,我的mac 2.7 - >情況並非如此代碼中沒有錯誤,而是與新的庫之一。
我想如何管理2.7的異常,但不幸的是,異常處理與2.5不兼容。
有沒有辦法像「預處理器命令 - C風格?
if interpreter.version == 2.5:
foo()
elif interpreter.version == 2.7:
bar()
?
乾杯, 薩爾瓦多
舉例附:
try:
foo()
except RuntimeError , (errorNumber,errorString):
print 'a'
#ok with 2.5, 2.7 however throws exceptions
try:
foo()
except RuntimeError as e:
print 'a'
#ok with 2.7, 2.5 does not understand this