2014-12-10 2 views
-3

기능이 있다고 가정 해 봅니다. 당신이를 기록하려면예외에 대한 개념 지우기

def main_foo(..): 
    try: 
    ele = foo(data) 
    except ValueError: 
     logger.log("exception caught") 

답변

1

: 내 친구 중 하나가

Please re-raise the errors at main_foo 

을 주석으로

def foo(data): 
    if data: 
    return data[0] 
    else: 
    raise ValueError('data is empty') 


def main_foo(..): 
    ele = foo(data) 

지금, 내가 그 예외를 잡으려면 그래서 내가 그런 짓을 의미 하는가 main_foo에서 예외가 발생했지만 다른 함수가 실제로 예외를 처리하게하려면 다음을 수행하십시오.

def main_foo(): 
    try: 
     ele = foo(data) 
    except ValueError: 
     logger.log("Exception caught") 
     raise 

처리 할 main_foo 호출자에 대해 동일한 예외가 발생합니다.