I have a generator (numbers) and a value (number). I would like to iterate over these as if they were one sequence:
i for i in tuple(my_generator) + (my_value,)
The problem is, as far as I undestand, this creates 3 tuples only to immediately discard them and also copies items in "my_generator" once.
Better approch would be:
def con(seq, item):
for i in seq:
yield seq
yield item
i for i in con(my_generator, my_value)
But I was wondering whether it is possible to do it without that function definition
itertools.chain
treats several sequences as a single sequence.So you could use it as:
which would output:
Try
itertools.chain(*iterables)
. Docs here: http://docs.python.org/library/itertools.html#itertools.chainitertools.chain()