Я этоКак написать пользовательскую функцию генератора с питоном
for A in [0, -0.25, 0.25, -0.5, 0.5, -0.75, 0.75, -1.0, 1.0, -1.25, 1.25, -1.5, 1.5, -1.75, 1.75, -2.0, 2.0, -2.25, 2.25, -2.5, 2.5, -2.75, 2.75, -3.0, 3.0, -3.25, 3.25, -3.5, 3.5, -3.75, 3.75, -4.0, 4.0, -4.25, 4.25, -4.5, 4.5, -4.75, 4.75, -5.0, 5.0]:
Можно ли это сделать с помощью функции генератора? У меня сейчас это:
def frange(start, stop, step=1.0):
while start <= stop:
yield start
start += step
и использовать так:
for error in self.frange(-2.5, 2.5, 0.25):
но его возвращает [-2.5, 2.25, ... , 0 , 2.25, 2.5]
и для моей программы очень трудно вычислить. потому что я нахожу значение, близкое к нулю, но я не знаю, сколько комбинаций оно может быть.
Мне нужно перейти от нуля, а следующее значение должно быть в минус и плюс. как [0, -0.25, 0.25...]
.
Как вы планируете использовать эту функцию? Что ты пытаешься сделать? – vaultah
Мне нужно, начать с нуля, а после этого отметьте минус значение и следующее значение плюс. Его программа для вычисления геометрии. Шаг равен 0,25. Потому что, когда я использую 'def frange (start, stop, step = 1.0): , а start <= stop: start start start + = step' каждый раз, когда' [-5, -4.75 ... 0 .. ., 4.75, 5] ' –
Почему это должна быть функция лямбда, а не обычная функция? – Kevin