1
resposta

Sistema de notificação inteligente

import asyncio

clientes = [
    {'nome': 'Ana', 'vip': True, 'notificação': False},
    {'nome': 'João', 'vip': False, 'notificação': True},
    {'nome': 'Carla', 'vip': False, 'notificação': False},
]

async def notificacoes(cliente):
    await asyncio.sleep(3)
    if cliente['vip']:
        print(f'Notificação VIP para {cliente['nome']} enviada!')
    elif cliente['notificação']:
        print(f'Notificação normal para {cliente['nome']} enviada!')
    else:
        print(f'{cliente['nome']} desativou as notificações. Nada foi enviado.')
    

async def main():
    print('Enviando notificações...\n')
    tarefas = [asyncio.create_task(notificacoes(cliente)) for cliente in clientes]
    await asyncio.gather(*tarefas)
    print('Todas as notificações foram enviadas')


asyncio.run(main())
1 resposta

Oii, Marcia! Como vai?

Gostei de como você utilizou asyncio para gerenciar o envio de notificações de forma assíncrona. Isso deixa o programa mais rápido para lidar com múltiplas tarefas simultaneamente.

Continue firme nos estudos.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!