Уведомления

Группа в Telegram: присоединиться | Jabber-конференция сообщества: pythonua@conference.jabber.ru

#1 Март 8, 2007 23:00:30

gen
От:
Зарегистрирован: 2007-02-19
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

передать в функцию функцию с параметрами

вообщем в мануале нет подобных примеров, потому и решил здесь спросить
конкретная задача: задаю функцию от х, и задаю ф-ию считающую интеграл, получающую функцию и пределы интегрирования делаю примерно так(упрощенно)

def f(x):
return x

def integral(fun,x1,x2):
h = float((x2 - x1))/10
x = x1
s = 0
while x<x2:
s += fun(x)*h
x += h
return s

p = integral(f(x),0,1)

ругается на неопределенный аргумент х



Офлайн

#2 Март 8, 2007 23:22:35

slivlen
От:
Зарегистрирован: 2006-07-06
Сообщения: 764
Репутация: +  0  -
Профиль   Отправить e-mail  

передать в функцию функцию с параметрами

f(x) - передает не ф-цию, а результат выполнения ф-ции f с аргументом x.



Офлайн

#3 Март 8, 2007 23:30:50

gen
От:
Зарегистрирован: 2007-02-19
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

передать в функцию функцию с параметрами

я понимаю, а как сделать, чтобы передавалась именно функция?
вообще у меня f(x)=s(x)*d(x,i,n) (где i n - определены)



Отредактировано (Март 8, 2007 23:32:37)

Офлайн

#4 Март 9, 2007 00:05:45

slivlen
От:
Зарегистрирован: 2006-07-06
Сообщения: 764
Репутация: +  0  -
Профиль   Отправить e-mail  

передать в функцию функцию с параметрами

Просто написать: integral(f,0,1)



Офлайн

#5 Март 9, 2007 00:11:53

gen
От:
Зарегистрирован: 2007-02-19
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

передать в функцию функцию с параметрами

“Просто написать: integral(f,0,1)”

а как быть с произведением функций !? ( f(x)=s(x)*d(x,i,n) (где i n - определены) )



Офлайн

#6 Март 9, 2007 08:16:27

gen
От:
Зарегистрирован: 2007-02-19
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

передать в функцию функцию с параметрами

а как при этом надо сказать функции d(x,i,n) что i и n - определены(присвоиить), а х - нет
как питон поймет запись integral(s*d,0,1) ??



Офлайн

#7 Март 9, 2007 08:50:40

gen
От:
Зарегистрирован: 2007-02-19
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

передать в функцию функцию с параметрами

Спасибо большое, и все же Python it's True! :)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version