Я читаю книгу «Праймер на научном программировании с помощью Python», и я застрял в упражнении 2.26. Говорят, что он пишет функцию maxmin (f, a, b, n = 1000), которая возвращает максимальные и минимальные значения математической функции f (x) (оцененной в n точках) в интервале между a и b.как вычислить функцию в списке?
Функция maxmin может вычислять набор из n координат между и b, хранящихся в списке x, затем вычислять f в точках в x и сохранять значения в другом списке y. Функции Python max (y) и min (y) возвращают максимальное и минимальное значения в списке y соответственно.
В качестве теста, он говорит, что
from math import cos, pi
print maxmin(cos, -pi/2, 2*pi)
должен выписывать (1,0, -1,0)
Это то, что я пытался, но ничего не возвращает!
from math import cos, pi
def maxmin(f, a, b, n=1000):
x = [f(i) for i in range(a, b, n)]
#print x
maximum = max(x)
minimum = min(x)
return maximum, minimum
print maxmin(cos, -pi/2, 2*pi)
@frostnational вы должны сделать это в ответ, потому что это действительно ответ. Диапазон – Duncan
позволяет вам проходить поплавки? –
Нет, это не так. Я получаю эту ошибку: TypeError: range() целочисленный конечный аргумент, ожидаемый, получил float. –