Заморочка с yield'ой
Добрый день, уважаемые.
У меня есть вот такой кусочек кода:
И вопрос к нему: чем отличается f(..f(x))..) от x = f (x) в цикле?
Откуда такое странное поведение?
Это где-нибудь подробно описано?
У меня есть вот такой кусочек кода:
def cons (x, xs):
yield x
while True:
yield xs.next ()
cons_with_const = lambda c: lambda xs: cons (c, xs)
def main ():
f = cons_with_const (1)
x = iter ([])
print list (f(f(f(x))))
while len (list (x)) < 5:
print list (x)
x = f (x)
main ()И вопрос к нему: чем отличается f(..f(x))..) от x = f (x) в цикле?
Откуда такое странное поведение?
Это где-нибудь подробно описано?
