2014-09-19 53 views
1

我讀了Python socket編程教程中,我發現這個除了在程序塊:這個try-except塊中「msg」的用途是什麼?

except socket.error, msg: 
    print 'Failed to create socket. Error code: ' + str(msg[0]) + ' , Error message : ' + msg[1] 
    sys.exit(); 

究竟什麼是「味精」引用(我知道它引用的錯誤信息);但是它是什麼以及它從哪裏拉出來的?

對不起,如果這個問題措辭不佳。我不確定我應該問什麼。

回答

2

msg是被捕獲的實際異常對象。例如:

try: 
    x = Exception() 
    raise x 
except Exception, msg: 
    assert x is msg 

書面聲明的現代生活方式是

except socket.error as msg 
1

msg是對錯誤的解釋!

這個例外是針對socket-related errors引發的。伴隨的值可以是一個字符串,告訴出了錯誤,或者是一個表示由系統調用返回的錯誤的對(errno,string),類似於伴隨os.error的值。請參閱模塊errno,其中包含由基礎操作系統定義的錯誤代碼的名稱。