Что такое ошибка ValueError - PullRequest
0 голосов
/ 26 июня 2018

Я нашел следующее определение в документах , но мне все еще не ясно:

Возникает, когда встроенная операция или функция получает аргумент, который имеет правильный тип, но недопустимое значение

У вас есть примеры?

Ответы [ 2 ]

0 голосов
/ 26 июня 2018

Пример, который дает конкретный ValueError, таков:

import 
math.log(0)

, который возвращает:

Traceback (most recent call last):

  File "<ipython-input-6-f7278b7c2ed1>", line 1, in <module>
    math.log(0)

ValueError: math domain error

Многие другие математические функции будут выдавать то же самое при неправильных входных данных (math.sqrt(-1), math.ceil(math.nan) и т. Д.)

0 голосов
/ 26 июня 2018

Взгляните на math#sqrt - для этого требуется число, но это число должно быть неотрицательным. Если вы попытаетесь позвонить на него с отрицательным числом (что невозможно сделать в математике с действительными числами), вы получите ValueError:

>>> from math import sqrt
>>> sqrt(-1)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: math domain error
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...