From 37a29d588f46eb190a2e17c4afcff59690b8602c Mon Sep 17 00:00:00 2001 From: Qing Zhan <9190969+zq46@users.noreply.github.com> Date: Wed, 2 Nov 2022 14:11:15 +0300 Subject: [PATCH] refactor: speed up for_each, by using deque to avoid explicit for loop --- src/superstream/stream.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/superstream/stream.py b/src/superstream/stream.py index c8448ef..af8cf80 100644 --- a/src/superstream/stream.py +++ b/src/superstream/stream.py @@ -34,8 +34,7 @@ def filter(self, func: Callable[[T], bool]) -> 'Stream[T]': return Stream(filter(func, self._stream)) def for_each(self, func: Callable[[T], None]) -> None: - for i in self._stream: - func(i) + deque(map(func, self._stream), maxlen=0) def distinct(self): return Stream(list(dict.fromkeys(self._stream)))