On Monday, June 26, 2017, Wes Turner <wes.tur...@gmail.com> wrote: > > > On Sunday, June 25, 2017, Wes Turner <wes.tur...@gmail.com > <javascript:_e(%7B%7D,'cvml','wes.tur...@gmail.com');>> wrote: > >> >> >> On Sunday, June 25, 2017, Danilo J. S. Bellini <danilo.bell...@gmail.com> >> wrote: >> >>> On Sun, Jun 25, 2017 at 3:06 PM, lucas via Python-ideas < >>> python-ideas@python.org> wrote: >>> >>>> I often use generators, and itertools.chain on them. >>>> What about providing something like the following: >>>> >>>> a = (n for n in range(2)) >>>> b = (n for n in range(2, 4)) >>>> tuple(a + b) # -> 0 1 2 3 >>> >>> >>> AudioLazy does that: https://github.com/danilobellini/audiolazy >>> >> >> - http://toolz.readthedocs.io/en/latest/api.html#toolz.itertoolz.concat >> and concatv >> >> - https://github.com/kachayev/fn.py#streams-and-infinite-seque >> nces-declaration >> - Stream() << obj >> > > << is __lshift__() > <<= is __ilshift__() > > https://docs.python.org/2/library/operator.html > > Do Stream() and __lshift__() from fn.py not solve here? >
In this syntax example, iter1 is mutated before iteration: iter_x = Stream(iter1) << iter2 << iter3 iter1 <<= iter5 # IDK if fn.py yet has <<= list(iter1) list(iter_x) > > >> >> >>> >>> >>> -- >>> Danilo J. S. Bellini >>> --------------- >>> "*It is not our business to set up prohibitions, but to arrive at >>> conventions.*" (R. Carnap) >>> >>
_______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/