Open
Description
Here is my attempt at an example:
from streams import Streams
from operator import mul
s1 = Stream()
s2 = Stream()
op = s1.product(s2, mul)
L = op.sink_to_list()
a = [1, 2, 3]
b = [4, 5, 6]
for x, y in zip(a, b):
s1.emit(x)
s2.emit(y)
print(L)
[4, 5, 6, 8, 10, 12, 12, 15, 18]
The best way that I can kind of come up with this is to stash all but one of the streams into a list and then for each incoming piece of data perform an itertools.product
on the resulting iterable and push it into some function. I'm not so crazy about this as it means we end up storing a bunch of stuff in memory which seems un-stream like.
Metadata
Assignees
Labels
No labels