Mam funkcję kwestii Statystyki:Ignoruj dzielenie przez 0 ostrzeżenia w Pythonie
import numpy as np
from scipy.special import gamma as Gamma
def Foo(xdata):
...
return x1 * (
(#R is a numpy vector
(((R - x2)/beta) ** (x3 -1)) *
(np.exp(- ((R - x2)/x4)))/
(x4 * Gamma(x3))
).real
)
czasami mam z powłoki następujące ostrzeżenie:
RuntimeWarning: divide by zero encountered in...
korzystać z funkcji numpy isinf
skorygować wyniki funkcji w innych plikach, które muszę zrobić. więc nie muszę być ostrzeżeniem.
Istnieje sposób, aby zignorować wiadomość? Innymi słowy, nie chcę, aby powłoka drukowała tę wiadomość.
Nie chcę wyłączyć wszystkie ostrzeżenia Pythona, tylko ten.
Można go po prostu złapać i zignorować, jeśli nie trzeba go odzyskiwać. – Carcigenicate
zawsze możesz użyć 'try ... except ZeroDivisionError' (lub innego błędu) – letsc
możliwy duplikat [Jak wyłączyć ostrzeżenia Pythona] (http://stackoverflow.com/questions/14463277/how-to-dable -python-warning) – marsh