Мне посчастливилось взглянуть на исходный код библиотеки python diffprivlib
. Они определили функцию следующим образом:
from numbers import Real
def set_epsilon_1(epsilon):
if not isinstance(epsilon, Real):
raise TypeError("epsilon must be numeric")
else:
return float(epsilon)
Мой вопрос таков: если цель состоит в том, чтобы вернуть число в виде числа с плавающей запятой, почему бы не проверить его с помощью числа с плавающей запятой, как показано ниже.
def set_epsilon_2(epsilon):
if not isinstance(epsilon, float):
raise TypeError("epsilon must be numeric")
else:
return float(epsilon)
Что такое разница между float и real?