В чем разница между нормальной функцией и функцией генератора?
Я пытаюсь понять методологию ниже,
In [26]: def generator():
....: print 'generator function hits'
....: for i in range(3):
....: yield i
....:
In [27]: def normal():
....: print 'normal function hits'
....: return range(3)
....:
In [28]: gen = generator()
In [29]: type(gen)
Out[29]: generator
In [30]: fun = normal()
normal function hits
In [31]: type(fun)
Out[31]: list
Вот мое исследование из приведенного выше кода, 26 являетсяgenerator()
функция и 27 являетсяnormal()
функция, когда я назначилgenerator()
Функция переменной Gen Я не видел ни одного печатного сообщения, какфункция генератора ударов, Но если бы я назначилnormal()
Функция Fun Fun переменная, я видел печатное сообщение, какнормальные хиты функции, Мой вопросwhy generator() function not hit ?