Форум сайта python.su
Кто вам такое “заказывал”?
Последуйте совету Evgen, или учитесь по этому курсу:
http://www.intuit.ru/department/pl/python/
Кстати рекомендую пройти так же предварительный курс по основам программирования.
Офлайн
А по пробелам и стилю красивого кода в Питоне воть ссылка на хабр (на русском):
http://habrahabr.ru/blogs/python/76738/
Офлайн
я бы побоялся такой книгой пользоваться :)
А по пробелам и стилю красивого кода в Питоне воть ссылка на хабр (на русском):Спешу себя пропеарить, я тоже есть в этой ссылке! xD
http://habrahabr.ru/blogs/python/76738/
Отредактировано (Янв. 12, 2010 20:05:02)
Офлайн
тема начинает оффтопом попахивать :)
Офлайн
горю,програмисты! третий день бьюсь над тем, чтобы написать универсальный цикл для поиска максимума функции с n-ным количеством переменных,пришел к тому,что получается цикл while в таком же цикле while n-ое количество раз и каждый цикл со своей переменной. а нужно как-то от этого уйти, может есть какой-то команда которая поможет мне избавиться от этой бесконечности? ниже привожу пример того на чем остановился:
def f(x,z): return sin(x)-cos(z)
x2=10*pi
z2=5*pi
e=0.1*pi
y1=f(x,z)
ymax=y1
xmax=x
zmax=z
while x<x2:
x=x+e
y2=f(x,z)
if y2>y1:
ymax=f(x,z)
xmax=x
zmax=z
y1=f(x,z)
while z<z2:
z=z+e
y2=f(x,z)
if y2>y1:
ymax=f(x,z)
xmax=x
zmax=z
y1=f(x,z)
print ymax,xmax,zmax
это для двух переменных, для трех соответсвенно на один цикл больше и т.д.
как это записать? помогите чем можете.
Офлайн
Гугли по слову “рекурсия”.
PS. Сейчас все новички будут писать свои вопросы в эту тему.
Отредактировано (Янв. 18, 2010 23:15:17)
Офлайн
кстати да, прикройте тему, новичкам целый раздел, а лазить тут каждый раз в конец топика думая, вопрос там или флуд, как-то лениво)
Офлайн
формирую вопрос более корректно: как перебрать все значения функции с н-количеством переменных? в любой последовательность.любая функция.
Офлайн
Артемийhttp://www.intuit.ru/department/pl/python/3/2.html
формирую вопрос более корректно: как перебрать все значения функции с н-количеством переменных? в любой последовательность.любая функция.
Офлайн
import itertools
from math import sin, cos, pi
def f(x, y):
return sin(x) - cos(y)
def iter_axis(axis):
x = axis.start
while x <= axis.stop:
yield x
x += axis.step
def find_max(f, *axises):
values = [iter_axis(axis) for axis in axises]
found = None
result = None
for v in itertools.product(*values):
ret = f(*v)
if result is None or result < ret:
result = ret
found = v
return found, result
print find_max(f, slice(-pi/2, pi/2, .01), slice(-pi/2, pi/2, 0.01))
Офлайн