抓住一個KeyboardInterrupt和SystemExit在Python腳本,有很多情況下,一個鍵盤中斷(按Ctrl-C)不殺,因爲一個裸except
子句中的代碼某處的過程:避免無意中在Python 2.4
try:
foo()
except:
bar()
標準溶液在Python 2.5或更高是捕捉Exception
而不是使用裸except
子句:
try:
foo()
except Exception:
bar()
此操作,因爲,像Python 2.5,KeyboardInterrupt
和的繼承自BaseException
,而不是Exception
。但是,一些安裝仍在運行Python 2.4。在Python 2.5之前的版本中如何處理這個問題?
(我要回答這個問題我自己,而是把它,讓別人搜索可以找到一個解決方案。)
不要問問題,以便你自己回答。 SO不是隨機數據的維基,它是人們實際詢問*的問題的答案。 – 2010-04-19 18:22:14
@Glenn Maynard:猜猜你是錯的:http://meta.stackexchange.com/questions/12513/should-i-not-answer-my-own-questions – Curd 2010-04-19 18:25:35
回答你自己的問題,如果你在問問題後詢問答案沒事。提出一個問題*,以便你可以回答*完全不同。 – 2010-04-19 20:13:40