문제

나는 어떤 종류의 경고가 오류로 무시되기를 원하지만, 첫 번째 사건만으로 만 발생합니다. 그렇게하는 방법?

나는 읽었다 http://docs.python.org/library/warnings.html 그리고 나는이 두 가지 유형의 행동을 결합하는 방법을 모른다.

도움이 되었습니까?

해결책

경고에 대한 코드를 살펴보면 경고에 둘 이상의 필터 작업을 할당 할 수 없으며 'Raise_once'와 같은 자신의 동작을 쉽게 정의 할 수 없습니다.

그러나 경고를 예외로 제기하고 싶지만 한 번만 경고를 제기하려면 예외를 포착하고 있음을 의미합니다. 특정 경고에 '무시'조치를 설정하는 제외 조항에 줄을 두십시오.

#!/usr/bin/python

import warnings

warnings.filterwarnings('error','Test')
for i in range(2):
  try:
    warnings.warn('Test');
  except UserWarning, e:
    print "Error caught"
    warnings.filterwarnings('ignore','Test')
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top