Итератор / генератор можно считать потоком? - PullRequest
0 голосов
/ 22 января 2020

Я читаю SICP и попал в часть потоков.

Можно ли считать python итератор / генератор потоком?

Например, этот итератор:

class MyNumbers:
  def __iter__(self):
    self.a = 1
    return self

  def __next__(self):
    x = self.a
    self.a += 1
    return x

myclass = MyNumbers()
myiter = iter(myclass)

print(next(myiter))
print(next(myiter))
print(next(myiter))
print(next(myiter))
print(next(myiter))

удовлетворяет определению:

поток - это последовательность элементов данных, доступных с течением времени. Поток можно рассматривать как элементы конвейерной ленты, обрабатываемые по одному, а не большими партиями.

https://en.wikipedia.org/wiki/Stream_ (вычисления)

1 Ответ

1 голос
/ 22 января 2020

Статья в Википедии, которую вы цитируете, продолжается:

В объектно-ориентированном программировании потоки ввода обычно реализуются как итераторы.

Итак, вот вам go; -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...