파이썬에서 0의 로그를 쓰려고합니다.파이썬에서 0의 로그 로그
from math import log
log(0)
그리고 나에게 예외가 발생합니다.
ValueError: math domain error
나는 음수의 log
수학적으로 정의되지 않은 것을 이해하고, 파이썬의 log
이 ValueError
예외를 발생시킬 수있는 이유입니다. 그러나 0으로 값을 호출 할 때 예외가 발생하는 이유는 무엇입니까? -inf
값을 반환해야하며 파이썬 (as in here)에서 무한 수를 나타낼 수 있음을 알았습니다.
개인적으로 처리하지 않고이 문제를 해결할 수 있습니까? 이런 식으로 할 때 나는 개인적으로 의미한다.
from math import log, inf
foo = ... # Random value.
if foo != 0: return log(foo)
else: return -inf
foo> 0이면 log (foo) else -inf'는 괜찮은 것 같습니다. – BallpointBen
_It은'-inf' 값을 반환해야합니다. 'log (0)'은 -inf와 같지 않습니다. 그것은 "0에 가깝다"는 한계는 무한히 가려는 경향이 있지만 값 자체는 정의되지 않습니다. –
부정적인 값을'-inf'로도 바꾸고 한계가 있어도 부적합한 @not_a_robot – Adirio