import asyncio
Lista para armazenar o status das tarefas
status_tarefas = ["Em andamento", "Em andamento", "Em andamento"]
Função assíncrona para cada tarefa
async def executar_tarefa(numero, tempo):
await asyncio.sleep(tempo)
status_tarefas[numero - 1] = "Finalizado"
print(f"Tarefa {numero} finalizada!")
Função principal
async def main():
# Criando as tarefas
tarefa1 = asyncio.create_task(executar_tarefa(1, 3))
tarefa2 = asyncio.create_task(executar_tarefa(2, 5))
tarefa3 = asyncio.create_task(executar_tarefa(3, 7))
tarefas = [tarefa1, tarefa2, tarefa3]
# Verificando o status das tarefas a cada segundo
while not all(tarefa.done() for tarefa in tarefas):
print(f"Status das tarefas: {status_tarefas}")
await asyncio.sleep(1)
# Aguarda todas finalizarem
await asyncio.gather(*tarefas)
Executando o programa
asyncio.run(main())