2017-09-30 1 views
2

Python 3.x에서 매개 변수가있는 예외를 처리하는 올바른 구문은 무엇입니까? 나는 특별히 WriteError을 처리하려고하는데, this page에 설명되어 있습니다.Python에서 매개 변수를 사용하여 예외를 처리하는 방법

except pymongo.errors.WriteError(err, code, dtls): 
     logging.error("DB Write Error. err={}; code={}; dtls={}".format(err, code, dtls)) 

이 작동하지 않습니다 :

나는 그것을 처리하는 코드를 쓰고 있어요.

심지어 Erros and Exceptions 문서를 보았습니다. 그러나 그것을 거기에서 발견 할 수 없었다.

이러한 종류의 예외를 처리하는 올바른 방법을 알려주시겠습니까?

답변

1

먼저 오류를 catch 한 다음 해당 특성을 조사합니다 (처리하려는 예외가 아닌 경우 예외를 다시 발생 시킴). 예외 내용에 일치하는 패턴이 없습니다.

+1

내 바보 같은 사람. 당신 말이 맞아요. 패턴 일치를 시도하고 변수에 할당하는 것에 대해 생각하지 않았습니다. 감사. – ameyazing

1

블록 except 블록에는 예외 유형 만 있으면됩니다. 블록 내에서 원하는 경우 해당 속성을 사용할 수 있습니다.

except pymongo.errors.WriteError as e: 
    logging.error("DB Write Error. err={}; code={}; dtls={}".format(e.err, e.code, e.dtls)) 
관련 문제