На странице представлен фрагмент

Реши любую задачу с помощью нейросети.

Для решения этой задачи нужно создать класс-итератор, где метод `__iter__` будет возвращать объект, а метод `__next__` будет возвращать следующий элемент в итерации.

Шаги решения на Python:
1. Создайте класс `WordIterator` и определите в нем методы `__init__`, `__iter__` и `__next__`.
2. В методе `__init__` сохраните переданную в конструктор строку как свойство объекта.
3. В методе `__iter__` просто верните сам объект.
4. В методе `__next__`:
– Разделите строку на слова, используя пробел в качестве разделителя. Можно использовать метод `split()`.
– Если список слов пуст, вызовите исключение `StopIteration`, чтобы сообщить об окончании итерации.
– В противном случае, верните первое слово из списка, используйте индекс `0`, и удалите его из списка, используя метод `pop(0)`.

Пример реализации на Python:
“`python
class WordIterator:
def __init__(self, string):
self.words = string.split()

def __iter__(self):
return self

def __next__(self):
if len(self.words) == 0:
raise StopIteration
return self.words.pop(0)
“`

Пример использования:
“`python
sentence = “Hello, world! This is a sentence.”
iterator = WordIterator(sentence)
for word in iterator:
print(word)
“`

Вывод:
“`
Hello,
world!
This
is
a
sentence.
“`

Таким образом, созданный класс `WordIterator` является итератором, который позволяет перебирать слова в строке, разделенные пробелами.