Функция минимизации Scipy (просто для использования в качестве примера) имеет возможность добавления функции обратного вызова на каждом шаге. Поэтому я могу сделать что-то вроде
def my_callback(x):
print x
scipy.optimize.fmin(func, x0, callback=my_callback)
Есть ли способ использовать функцию обратного вызова для создания версии генератора fmin, чтобы я мог это сделать,
for x in my_fmin(func,x0):
print x
Кажется, что это возможно с некоторой комбинацией доходностей и отправлений, но я могу все придумать.