Ejemplo n.º 1
0
Archivo: bw51.py Proyecto: kji0205/py
"""루트 Exception을 정의해서 API로부터 호출자를 보호하자"""
import logging
import my_module


try:
	weight = my_module.determine_weight(1, -1)
except my_module.NegativeDensityError as e:
	raise ValueError('Must supply non-negative density') from e
except my_module.InvalidDensityError:
	weight = 0
except my_module.Error as e:
	logging.error('Bug in the calling code: %s', e)
except Exception as e:
	logging.error('Bug in the API code: %s', e)	
	raise
Ejemplo n.º 2
0
import my_module
import logging

try:
    # 오류가 나야 함
    weight = my_module.determine_weight(1, -1)
except my_module.Error:
    logging.exception('예상치 못한 오류')
Ejemplo n.º 3
0
import my_module
import logging

try:
    # API 코드 버그로 인한 오류가 나야 함
    weight = my_module.determine_weight(0, 1)
except my_module.InvalidDensityError:
    weight = 0
except my_module.Error:
    logging.exception('호출 코드에 버그가 있음')
except Exception:
    logging.exception('API 코드에 버그가 있음!')
    raise  # 예외를 호출자쪽으로 다시 발생시킴