더 나은 str 오류를 처리하기 위해 예외를 발생시키는 사람을 식별해야합니다. 방법이 있습니까? 내 예에서파이썬에서 어떤 함수 호출이 예외를 발생시키는 지 확인하는 방법은 무엇입니까?
보기 :
try:
os.mkdir('/valid_created_dir')
os.listdir('/invalid_path')
except OSError, msg:
# here i want i way to identify who raise the exception
if is_mkdir_who_raise_an_exception:
do some things
if is_listdir_who_raise_an_exception:
do other things ..
내가 파이썬에서,이 문제를 해결할 수있는 방법?
+1하지만 실패한 함수를 반환하는 stk [0] [3]은 아닙니까? – luc
@luc, 가능하다면 소스가됩니다. http://docs.python.org/library/traceback.html?highlight=traceback#traceback.extract_tb에서 문서 인용하기, ""사전 처리 된 "스택 추적 항목은 4 배가됩니다."(파일 이름, 행 번호, 함수 이름, 텍스트)'스택 추적을 위해 보통 인쇄되는 정보를 나타내는 텍스트입니다. 텍스트는 앞뒤 공백이 제거 된 문자열이고, 소스를 사용할 수없는 경우 없음입니다. "" "function_name은 튜플의 인덱스 2에서. –
try/except, try/except 솔루션이 더 좋을 수도 있지만, 제 경우에는 어떤 함수가 예외를 발생시켜야합니까? 그래서이 대답은 저에게 최고의 답입니다! 고마워요 :) –