Estoy emitiendo muchas advertencias en un validador, y me gustaría suprimir todo en stdout excepto el mensaje que se proporciona a warnings.warn()
.Python: Imprima solo el mensaje en las advertencias
Es decir, ahora veo esto:
./file.py:123: UserWarning: My looong warning message
some Python code
Me gustaría ver esto:
My looong warning message
Edición 2: Anulación warnings.showwarning()
resultó trabajo:
def _warning(
message,
category = UserWarning,
filename = '',
lineno = -1):
print(message)
...
warnings.showwarning = _warning
warnings.warn('foo')
¿Has leído el enlace? Y cito: "Puede reemplazar esta función con una implementación alternativa asignando warnings.showwarning". El manual * en sí * recomienda que monopatche el módulo. –
no se preocupe, es un procedimiento de pitón perfectamente normal, no drástico en absoluto. –