문제
나는 어떤 종류의 경고가 오류로 무시되기를 원하지만, 첫 번째 사건만으로 만 발생합니다. 그렇게하는 방법?
나는 읽었다 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')
제휴하지 않습니다 StackOverflow