2015-11-25 72 views
-2

運行我的腳本時出現錯誤,我知道它存在,但我不希望Python打印錯誤。錯誤(它是一個KeyError)在if語句中。有沒有辦法阻止if語句打印錯誤消息?阻止Python拋出KeyError異常

+4

https://docs.python.org/2.7/tutorial/errors.html#handling-exceptions – TigerhawkT3

+0

如果你只是想不顯示錯誤,只是重新stderr流做的/ dev/null的,如果你有一個類Unix系統。它也可以在Windows下完成,但是在啓動Python之前,它需要一個包裝程序來進行重定向(至零)。但要小心,一個未被捕捉的KeyError會中止腳本... ... –

+1

_Fixing_問題幾乎總是比單純隱藏它好。如果我們能看到產生'KeyError'的代碼,這將有所幫助。如果它是由'some_dict [bogus_key]'引起的,你可以改用['dict.get'](https://docs.python.org/2.7/library/stdtypes.html#dict.get)方法默認。 –

回答

-2

試試這個。

while True: 
    try: 
     x = int(raw_input("Please enter a number: ")) 
     break 
    except ValueError: 
     print "Oops! That was no valid number. Try again..." 
+1

這是如何回答這個問題的? –