我已經使用Boost Python將我的C++代碼製作成一個接口,從我的C++代碼調用Python解釋器。我很想知道是否有任何API函數或可以使Python運行時安全的東西。我的意思是說,如果代碼中出現任何錯誤和錯誤,是否可以讓解釋器跳過?如何使Python運行時安全?
在此先感謝
我已經使用Boost Python將我的C++代碼製作成一個接口,從我的C++代碼調用Python解釋器。我很想知道是否有任何API函數或可以使Python運行時安全的東西。我的意思是說,如果代碼中出現任何錯誤和錯誤,是否可以讓解釋器跳過?如何使Python運行時安全?
在此先感謝
Python有exception handling功能。你可以用有try塊,以創建一個錯誤的可能性的任何代碼:
try:
#do risky stuff
except Exception as e:
print "Exception", e, "received. Code will continue to execute"
#do other stuff that needs to be done
您可以用特定的類型,你希望異常的代碼替換Exception
,如ZeroDivisionError
,然後你的代碼只會捕獲這種類型的錯誤。
是的,這裏是所有可用選項的巨型線程http://stackoverflow.com/questions/730764/try-except-in-python-how-to-properly-ignore-exceptions – user1462442
'模塊'具有特定的含義在Python中。 – agf
我在我的C++代碼中使用Python解釋器,我想在我的C++代碼中進行錯誤處理!在Python中處理錯誤有一個缺點,我不希望我的C++錯誤被Python處理! –
在Python代碼本身中簡單地捕獲任何異常是否更好? – cm2
「跳過」故障或異常不是一種選擇,因爲代碼可能無法繼續運行。最好的辦法是將所有Python代碼的執行包裝在「try/except」中,但是無法恢復並繼續執行。 – martineau