JustCaptain kod-buduschego
main
Перейти к файлу
Код
task_1.py
"""
Задача 1. Лента сообщений в чате
Предметная область
Вы пишете backend для мессенджера.
Сообщения подгружаются не все сразу — пользователь листает чат вверх, и система отдаёт их по одному.
Поэтому нужен генератор.

Условие:
Создайте генератор chat_messages().
Он должен выдавать сообщения по одному:
"Привет"
"Как дела?"
"Увидимся завтра"

Пример использования:

for message in chat_messages():
print(message)

Ожидаемый результат:

Привет
Как дела?
Увидимся завтра

⸻

Что тренируется

- yield
- понимание последовательной выдачи данных
- идея «получаем по одному элементу»

Дополнительное усложнение

Добавьте ещё 10 сообщений.

Поймите:

Почему генератор здесь лучше списка?
"""

from typing import Generator

MESSAGES: list[str] = ["Привет", "Как дела ?", "Увидимся завтра"]


def chat_messages(count_message: int) -> Generator:
    current_message: int = 0
    while current_message != count_message:
        yield MESSAGES[current_message]
        current_message += 1


for message in chat_messages(len(MESSAGES)):
    print(message)