Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 12, 2010 18:34:04

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Мелкие вопросы от новичка

Кто вам такое “заказывал”?
Последуйте совету Evgen, или учитесь по этому курсу:
http://www.intuit.ru/department/pl/python/

Кстати рекомендую пройти так же предварительный курс по основам программирования.

Офлайн

#2 Янв. 12, 2010 19:26:02

vaxXxa
От: Kyiv, Ukraine
Зарегистрирован: 2009-06-16
Сообщения: 278
Репутация: +  0  -
Профиль   Отправить e-mail  

Мелкие вопросы от новичка

А по пробелам и стилю красивого кода в Питоне воть ссылка на хабр (на русском):
http://habrahabr.ru/blogs/python/76738/



Офлайн

#3 Янв. 12, 2010 20:03:13

Zubchick
От:
Зарегистрирован: 2009-07-08
Сообщения: 613
Репутация: +  0  -
Профиль   Отправить e-mail  

Мелкие вопросы от новичка

я бы побоялся такой книгой пользоваться :)

А по пробелам и стилю красивого кода в Питоне воть ссылка на хабр (на русском):
http://habrahabr.ru/blogs/python/76738/
Спешу себя пропеарить, я тоже есть в этой ссылке! xD



Отредактировано (Янв. 12, 2010 20:05:02)

Офлайн

#4 Янв. 12, 2010 20:50:35

sypper-pit
От: Ulan-Ude(msk)
Зарегистрирован: 2009-01-30
Сообщения: 1102
Репутация: +  6  -
Профиль   Отправить e-mail  

Мелкие вопросы от новичка

тема начинает оффтопом попахивать :)

Офлайн

#5 Янв. 18, 2010 20:00:10

Артемий
От:
Зарегистрирован: 2010-01-18
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Мелкие вопросы от новичка

горю,програмисты! третий день бьюсь над тем, чтобы написать универсальный цикл для поиска максимума функции с 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

это для двух переменных, для трех соответсвенно на один цикл больше и т.д.
как это записать? помогите чем можете.



Офлайн

#6 Янв. 18, 2010 23:10:15

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Мелкие вопросы от новичка

Гугли по слову “рекурсия”.

PS. Сейчас все новички будут писать свои вопросы в эту тему.

Отредактировано (Янв. 18, 2010 23:15:17)

Офлайн

#7 Янв. 19, 2010 07:34:51

Zubchick
От:
Зарегистрирован: 2009-07-08
Сообщения: 613
Репутация: +  0  -
Профиль   Отправить e-mail  

Мелкие вопросы от новичка

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



Офлайн

#8 Янв. 19, 2010 13:02:41

Артемий
От:
Зарегистрирован: 2010-01-18
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Мелкие вопросы от новичка

формирую вопрос более корректно: как перебрать все значения функции с н-количеством переменных? в любой последовательность.любая функция.



Офлайн

#9 Янв. 19, 2010 13:51:53

Dimka665
От:
Зарегистрирован: 2008-09-19
Сообщения: 177
Репутация: +  0  -
Профиль   Отправить e-mail  

Мелкие вопросы от новичка

Артемий
формирую вопрос более корректно: как перебрать все значения функции с н-количеством переменных? в любой последовательность.любая функция.
http://www.intuit.ru/department/pl/python/3/2.html



Офлайн

#10 Янв. 19, 2010 16:11:22

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Мелкие вопросы от новичка

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))



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version