логарифм питона - PullRequest
       6

логарифм питона

3 голосов
/ 07 июня 2009

Я хочу узнать log10 целого числа в Python, и я получаю ошибку, как математическая ошибка домена

мой код такой ш = math.log10 (д * q1) /math.log10 (2)

где q1, q2 - целые числа

да q1 иногда 0

Ответы [ 4 ]

10 голосов
/ 07 июня 2009

Вы можете вычислить только логарифм положительного числа. Попытка вычислить логарифм для отрицательного числа или нуля приведет к «математической ошибке домена» в Python.

Кстати: похоже, что вы пытаетесь вычислить логарифмическую базу 2. Вы можете сделать это с помощью math.log:

w=math.log(q*q1, 2)

Второй необязательный параметр является базовым. По умолчанию используется значение e (то есть: натуральный логарифм).

8 голосов
/ 07 июня 2009

Значение q или q1 равно нулю или один из них отрицательный?

1 голос
/ 21 декабря 2014

старайтесь убедиться, что значение, журнал которого вы пытаетесь найти, никогда не может быть 0. Поскольку log (0) стремится к отрицательной бесконечности, вызов функции выдаст вам ошибку математического домена. Исправьте это, и я думаю, что вы будете в порядке.

1 голос
/ 07 июня 2009

math.log10 (0) - минус бесконечность. Смотри: http://en.wikipedia.org/wiki/Logarithm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...