Учитывая список верхних пределов: B1, B2, .. BN;
Функции зависимостей: f1, ..., Fn-1,Использование itertools для произвольного количества вложенных циклов разных диапазонов с зависимостями?
мне интересно, если есть рецепт, используя itertools или другие классы в Python для:
for i1 in range(0, B1):
for i2 in range(f1(i1), B2): ...
for iN in range(fN-1(iN-1), BN)
dostuff(i1, i2, ... iN)
Где есть N уровней вложенности ?
Я хочу использовать эту вспомогательную функцию, как это:
dependentProducts (Bs, фс, DoStuff),
, который возвращает список или итерацию
В идеале, реализация будет итеративной вместо рекурсивной.
Забавный вопрос. У вас есть реальное применение этого? ;-) –
Почему вы предпочитаете это итеративно? –
@StefanPochmann Вероятно, потому что рекурсия на питоне медленная, и в некоторых случаях вы в конечном итоге нарушаете предел рекурсии ... – Bakuriu